内容简介:配置vscode调试java代码
习惯了vscode,现阶段因工作需要需切换到 java 做项目,因此就想看看能不能配置一下vscode来写java,配置完后,发现效果还不错,也有一些小发现,这里将过程记录一下,以备后续用。
安装vscode插件
安装两个插件,第一个是redhat官方出的java的支持,第二个是微软出的java调试工具。
配置单文件debug
比如我们很简单的目录结构:
├── bin └── src
src目录存放java源代码,bin目录存放编译后的class文件。
官方提供的Language support for java是通过Eclipse ™ JDT Language Server,Buildship来启动一个服务监听并编译源代码,这里我们需要手动创建两个文件来配置该编译服务的相关项。
创建.project和.classpath文件
-
.project
<?xml version="1.0" encoding="UTF-8"?> <projectDescription> <name>testjava</name> <comment>Project testjava created by Buildship.</comment> <projects> </projects> <buildSpec> <buildCommand> <name>org.eclipse.jdt.core.javabuilder</name> <arguments> </arguments> </buildCommand> <buildCommand> <name>org.eclipse.buildship.core.gradleprojectbuilder</name> <arguments> </arguments> </buildCommand> </buildSpec> <natures> <nature>org.eclipse.jdt.core.javanature</nature> <nature>org.eclipse.buildship.core.gradleprojectnature</nature> </natures> </projectDescription>
-
.classpath
<?xml version="1.0" encoding="UTF-8"?> <classpath> <classpathentry kind="src" path="src"/> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8/"/> <classpathentry kind="con" path="org.eclipse.buildship.core.gradleclasspathcontainer"/> <classpathentry kind="output" path="bin"/> </classpath>
第一个.project文件,vscode会识别该项目为eclipse项目,第二个文件.classpath配置了源码目录以及编译输出目录等。
配置launch.json
- 如果项目里没有.vscode,先创建一个.vscode的目录。
-
在.vscode目录里创建launch.json文件:
{ "version": "0.2.0", "configurations": [ { "type": "java", "name": "Debug (Launch)", "request": "launch", "cwd": "${workspaceFolder}/bin", "sourcePaths": [ "$(workspaceRoot)/src" ], "classPaths": [ "", "$(workspaceRoot)/bin" ], "mainClass": "com.coolcao.test.${fileBasenameNoExtension}", "args": "" } ] }
简单说明一下,cwd参数配置javac命令运行的根目录,这里应指定编译后的.class文件所在的根目录。
sourcePaths配置源码目录,classPaths配置编译后的.class目录。
mainClass配置要运行的主类文件。这里有一点不好的是,需要手动补全类的包名。如果文件都不在一个同一个包下,那么每次debug时需要指定当前运行类所在的包。
以上几个参数是最重要的,用了vscode内置的几个变量。
args是运行class文件需要添加的参数,根据需要配置即可。
最后文件目录结构差不多如下:
├── .classpath ├── .project ├── .vscode │ └── launch.json ├── bin │ └── com │ └── coolcao │ └── test │ └── App.class └── src └── com └── coolcao └── test └── App.java
这样,每次修改java代码时,vscode会自动编译代码到指定的class目录,需要debug,点击debug按钮,运行Debug (Launch)即可。
配置gradle管理的spring boot项目
使用gradle创建的spring boot项目,配置起来和上面差不多,思路都是一样的。
- 先配置.project和.classpath文件,注意源码目录和编译后字节码文件.class目录。
- 配置launch.json,注意cwd参数指定javac运行目录,以及sourcePaths和classPaths对应着上面第一步的配置。
- 指定运行的主类即可。
题外话:使用idea创建gradle项目,在java9下提示gradle版本不兼容java9的解救方法
使用idea创建gradle项目时,如果提示gradle不兼容java9:
Could not determine java version from '9.0.1'.
有两种解救办法:
- 创建项目时,自己指定gradle为本地已下载的高版本gradle
该方法前提是本地已下载了支持java9的gradle版本,比如 4.4.1,下载完后一般放到~/.gradle/wrapper/dists
目录下,然后创建的时候选择该版本即可
- 使用 gradlew 配置
创建完成后,如果提示gradle版本不对或者要修改gradle版本,可以使用gradle wrapper:> gradle wrapper 然后在项目里的gradle目录里修改文件gradle-wrapper.properties,修改distributionUrl为: https\://services.gradle.org/distributions/gradle-4.4.1-bin.zip
以上所述就是小编给大家介绍的《配置vscode调试java代码》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 一场Nginx https配置调试过程
- 前端小纠结--VS Code调试配置分享
- 微信分享在本地调试配置nginx将本地ip映射为公众号配置域名
- 正确配置 Visual Studio Code 开发和调试 TypeScript
- Visual Studio 通过修改项目的调试配置文件做到临时调试的时候不要编译(解决大项目编译缓慢问题)
- 工具 | 腾讯开源的,基于 Whistle 实现的多账号多环境远程配置及抓包调试平台
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Algorithms in Java, Part 5
Robert Sedgewick / Addison-Wesley Professional / 2003-7-25 / USD 54.99
Algorithms in Java, Third Edition, Part 5: Graph Algorithms is the second book in Sedgewick's thoroughly revised and rewritten series. The first book, Parts 1-4, addresses fundamental algorithms, data......一起来看看 《Algorithms in Java, Part 5》 这本书的介绍吧!