目录

  • Java开发插件配置:
  • 调试:
  • 快捷键:
  • 启动配置文件launch.json:
  • 启动配置说明:
    • Launch:
    • Attach:
    • User Setting:
  • 遇到的问题:
  • 参考:

Java开发插件配置:

Microsoft有个官方的插件Java Extension Pack,点开它的“依赖项”可以看到就是需要装的几个插件,可以直接装这个

或者

我们可以直接安装 Java 扩展包 ,里面包含了受大多数 Java 开发者欢迎的插件:

  • Language Support for Java(TM) by Red Hat:通过 Eclipse ™ JDT Language Server 提供 Java 语言支持
  • Debugger for Java:基于 Java Debug Server 的轻量级调试工具。
  • Java Test Runner:执行和调试 Java 测试用例。
  • Maven for Java:Maven 插件。

根据自己需要配置的插件:

  1. Spring Boot Support
  2. Spring Initializr Java Support
  3. Tomcat for Java
  4. CheckStyle for Java
  5. Lombok Annotations Support for VS Code
  6. Terminal

调试:

打开包含 Java 项目的代码,然后按下面的步骤进行:

  1. 准备项目。打开一个 .java 文件,Java 扩展会激活。Maven、Gradle 和 Eclipse 项目都能得到支持。这个扩展会自动构建项目,不需要手工触发构建。
  2. 开始调试。切换到调试视图(Ctrl+Shift+D),打开 launch.json 并添加 Java 调试配置。
  3. 在 mainClass 中填入要启动的类,或者在 hostName 中填入要附加的主机名以及在 port 中填入端口。
  4. 设置断点并按 F5 开始调试。

支持以下特性:

  • 启动/附加 - 你可以在 VS Code 中启动一个 Java 项目,也可以附加到一个在本地或远程端以调试模式运行的 JVM 进程。
  • 断点 - 支持表达式条件或命中条件断点,可以在内置的断点设置容器中轻松进行设置。因此你可以直接在源代码视图中插入断点,不需要弹出容器,非常方便。按异常中断也得到了支持。
  • 控制流 - 包括 暂停、继续 F5、单步 F0、步进 F11、步出(跳出) Shift+F11
  • 数据审查 - 当程序停止在断点上的时候,调试器可以访问当前内存中的变量名和值。支持查看/监视/设置变量值。
  • 诊断 - 调用栈 面板会显示程序的调用栈,你在这个面板中可以在捕获的调用路径中随意跳转。多线程调试也通过并行栈得到支持。
  • 调试控制台 - 可以从调试控制台看到标准输出和错误输出信息。

快捷键:

注释代码: Ctrl + /

切换侧边栏: Ctrl + b

文件夹中查找: Ctrl + shift + f

查找替换: Ctrl + shift + h

打开一个新的窗口:Ctrl +Shift + n

重构代码: fn + F2

代码格式化: Shift+Alt+F,或 Ctrl+Shift+P 后输入 format code

启动调试:F5

启动配置文件launch.json:

{// 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387"version": "0.2.0","configurations": [{"type": "java","name": "Debug (Launch) - Current File","request": "launch","vmArgs":"-Dserver.port=8082 -Dspring.profiles.active=dev -Dmaven.test.skip=true","mainClass": "${file}"},{"type": "java","name": "Debug (Launch)-SpringBootDemoApplication<SpringBootDemo>","request": "launch","vmArgs":"-Dserver.port=8081 -Dspring.profiles.active=dev -Dmaven.test.skip=true","mainClass": "com.qhong.SpringBootDemoApplication","projectName": "SpringBootDemo"}]
}

启动配置说明:

Launch:

  • mainClass (required): java 代码的 main 类 (例如:[mymodule/]com.xyz.MainClass).
  • args: 传递给程序的命令行参数
  • sourcePaths: 程序的额外源目录。默认情况下,调试器从项目设置中查找源代码。这个选项允许调试器在额外的目录中查找源代码
  • modulePaths: 用于启动JVM的模块路径。如果没有指定,调试器将自动从当前项目解析
  • classPaths: 启动JVM的类路径。如果没有指定,调试器将自动从当前项目解析
  • encoding: 该文件中的JVM的编码设置。如果没有指定,将使用’UTF-8’。在Supported Encodings 中可以找到可能的值
  • vmArgs: JVM的额外选项和系统属性(例如:-Xms<size> -Xmx<size> -D<name>=<value>)
  • projectName: 调试器在其中搜索类的首选项目。在不同的项目中可能会有重复的类名。当调试器在启动程序时查找指定的主类时,这个设置也可以工作。表达式求值是必须的
  • cwd: 程序的工作目录
  • env: 程序的额外环境变量
  • stopOnEntry: 启动后自动暂停程序
  • console: 用于启动程序的指定控制台。默认为 internalConsole
    • internalConsole: VS Code Debug 控制台 (输入不被支持)
    • integratedTerminal: VS Code 集成终端
    • externalTerminal: 可以在用户设置中配置的外部终端
  • stepFilters: 在执行debug调试时,跳过指定的类或方法
    • classNameFilters: 跳过指定的类。类名应该完全限定,支持通配符
    • skipSynthetics: 跳过synthetic 方法
    • skipStaticInitializers: 跳过静态初始化方法
    • skipConstructors: 跳过构造方法

Attach:

  • hostName (required): 远程调试器的主机名或IP地址
  • port (required): 远程调试器的debug端口
  • timeout: 重新连接之前的超时时间,以毫秒为单位(默认为30000ms)
  • sourcePaths: 程序的额外源目录。默认情况下,调试器从项目设置中查找源代码。这个选项允许调试器在额外的目录中查找源代码
  • projectName: 调试器在其中搜索类的首选项目。在不同的项目中可能会有重复的类名。当调试器在启动程序时查找指定的主类时,这个设置也可以工作
  • stepFilters: 在 debug 调试时,跳过指定的类或方法
    • classNameFilters: 跳过指定的类。类名应该完全限定,支持通配符
    • skipSynthetics: 跳过 synthetic 方法
    • skipStaticInitializers: 跳过静态初始化方法
    • skipConstructors: 跳过构造方法

User Setting:

  • java.debug.logLevel: 发送到VS代码的调试器日志的最低级别,默认为警告
  • java.debug.settings.showHex: 在变量视图中以十六进制格式显示数字,默认为false
  • java.debug.settings.showStaticVariables: 在variables视图中显示静态变量,默认为true
  • java.debug.settings.showQualifiedNames: 在变量视图中显示完全限定的类名,默认为false
  • java.debug.settings.maxStringLength: 变量视图或调试控制台中显示的最大字符串长度。超过此长度的字符串将被裁剪。默认值为0,表示没有进行修剪
  • java.debug.settings.enableHotCodeReplace: 启用Java源代码的热代码替换。确保VScode 中的 Java 代码没有禁用自动构建。有关用法和限制的更多信息,请参阅 wiki page

遇到的问题:

  1. 找不到主类等方法

找不到构建路径
等等一系列路径问题
解决方法:
可能是项目有错误(如子项目同名)或缓存问题。
1、可以按Ctrl+Shift+P,输入Java:Open Java Language Server Log file,查看日志文件来排错。
2、 同时删除C:\Users\AppData\Roaming\Code\CachedData目录下的缓存,重新打开VS Code是就能正常识别java文件和生成调试配置了。 (如果路径不对,就在日志文件里面找到路径,删除最新缓存(类似图中一串英文数字的文件夹),重新打开VS Code。)

参考:

win10+vscode部署java开发环境

VSCODE 打造完美java开发环境

Visual Studio Code 搭建 Java 开发环境

Java in Visual Studio Code

配置vscode调试java代码

VSCode搭建Java开发运行环境

Microsoft/vscode-java-debug

Debugging Java in Visual Studio Code

VS Code有哪些常用的快捷键?

转载于:https://www.cnblogs.com/hongdada/p/10118381.html

win10+vscode部署java开发环境相关推荐

  1. VSCode配置JAVA开发环境,java初级面试笔试题

    我总结出了很多互联网公司的面试题及答案,并整理成了文档,以及各种学习的进阶学习资料,免费分享给大家. 扫描二维码或搜索下图红色VX号,加VX好友,拉你进[程序员面试学习交流群]免费领取.也欢迎各位一起 ...

  2. [Linux]在Linux上部署Java开发环境笔记(一)-- 补充:Linux下如何手动设置IP及配置DNS服务

    在Linux上部署Java开发环境笔记(一) -- 补充:Linux下如何手动设置IP及配置DNS服务 2010/06/17 有的Linux系统会有网络设置的图形操作界面,比如"红旗Linu ...

  3. VSCode配置JAVA开发环境windows 2020

    VSCode配置JAVA开发环境windows 2020(傻瓜式) 下载 安装 下载 今天想用vscode配置Java,结果网上的教程把我看傻了,一个比一个复杂,又是setting.json,又是添加 ...

  4. 【教程】VsCode搭建Java开发环境

    配置Java开发环境 主要参考官方教程:https://code.visualstudio.com/docs/java/java-tutorial 1.先安装JDK JDK下载地址:https://w ...

  5. 阿里云部署Java开发环境

    阿里云部署Java网站和微信开发调试心得技巧(上) 本文主要是记录在阿里云服务器从零开始搭建Java执行环境并且部署web project的过程,方面以后查阅. 一.申请阿里云服务器 购买阿里云服务器 ...

  6. VScode 配置 Java 开发环境(最简单的纯小白带图版)

    VScode 配置 Java 环境 1.下载VS Code VSCode下载官网 2.配置中文环境 如果懂英语,或者想在编程上有更好的进步,可以跳过这一步,毕竟以后工作,很多软件并非中文,但像我这样的 ...

  7. VScode 配置 Java 开发环境 (VSCode 天下第一!!!!!)

    VScode 配置 Java 环境 1. 下载 JDK 方式一:手动下载 JDK Oracle Java SE AdoptOpenJdk Azul Zulu for Azure - Enterpris ...

  8. VScode 配置 Java 开发环境 (VSCode 天下第一)

    VScode 配置 Java 环境 1. 下载 JDK 方式一:手动下载 JDK Oracle Java SE AdoptOpenJdk Azul Zulu for Azure - Enterpris ...

  9. VSCode配置JAVA开发环境插件安装

    1.Language support for Java ™ for Visual Studio Code(Red Hat的Java(TM)语言支持) 2.Debugger for Java 3.Mav ...

最新文章

  1. 多个class相同的input标签 获取当前值!方法!
  2. linux php mysql安装完整版本_Linux下安装PHP+MySQL+Apache完整版
  3. Bootstrap3 排版-缩略语
  4. java 泛型int_Java 泛型
  5. spring bean 基于xml的4中初始化方法
  6. 基于Server-Sent Event的简单在线聊天室
  7. 在JBoss的服务器端正确解码URL参数
  8. 基于mybatis-generator代码生成工具改(链式方法实体版)
  9. 利用php百马百担_百鸡百钱===百马百担====for循环嵌套
  10. 迅为IMX8M mini开发板Yocto系统交叉编译C程序
  11. dspscififo历程_DSP2812 SCI FIFO模式调试心得
  12. 文本分类——怎么将二分类模型应用到多分类问题?
  13. DeleteRow()
  14. Java中如何通过经纬度坐标获取两个点之间的直线距离
  15. 《dota2》地精修补匠tinker路人攻略
  16. 计算机科学 名言,计算机科学名人名言.docx
  17. Android Dialog中加载GIF
  18. 导入镜像报错解决方法
  19. 教你轻松构建asp.net网站框架
  20. 某里223滑块流程分析

热门文章

  1. 【FZU - 1759】Super A^B mod C (数论,快速幂,快速乘,欧拉降幂,指数循环节,模板)
  2. Coursera自动驾驶课程第9讲:Visual Features Detection Description and Matching
  3. 机器学习笔记(十五):推荐系统
  4. 虚拟机安装Linux(vmware + ubuntu)
  5. 服务器不显示u盘,服务器不读u盘启动
  6. linux的命令窗口,(翻译)Linux命令行(二)
  7. 华为鸿蒙2.0操作页面,华为鸿蒙2.0开面界面确认,这一变化你可懂
  8. tomcat上传文件到不同服务器,使用SpringMVC进行跨服务器上传文件出现的那些坑
  9. android6.0 sd卡卸载api,android6.0 用户关掉sd卡读取权限的情况下, 还能做到手机缓存么?...
  10. leetcode167. 两数之和 II - 并没有那么easy的easy题