前几天踩了一个坑,基于vscode远程开发调试java8代码。vscode的远程开发非常方便,在python开发方面已经可以抛弃pycharm了,但是在java方面离Intellij idea 还差得很远。但是Intellij idea 的远程开发功能只有pro付费版才有,社区版只能用于自己桌面。为了能够在远程开发机进行debug java代码,于是硬啃vscode对应的配置。踩过坑之后,就会觉得vscode真香!
目的
基于vscode Maven 远程开发调试基于java8的项目代码
步骤
在开发机上安装java开发环境
代码语言:javascript复制sudo apt install openjdk-8-jdk # dev host ubuntu system
- 注册环境变量
export JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64"
export PATH=$JAVA_HOME/bin:$PATH:.
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
- 安装maven和配置maven 环境变量
sudo apt update # dev host
sudo apt install maven
export M2_HOME="/usr/share/maven" # default directory for mvn home
export M2=${M2_HOME}/bin
export PATH=${PATH}:${M2_HOME}/bin
- 如果maven仓库有用到内部私有源,则需要在maven配置文件做一些修改(/usr/share/maven/conf/settings.xml)
配置vscode
- 在自己电脑上安装 Vscode
- vscode上搜索安装远程开发插件Install Remote Development extension pack
- 启动vscode,接入远程开发机
- 在远程开发机上安装java开发插件
- 1 Java Extension Pack
- 2 Install Lombok Annoations for Vscode
- 3 等,视项目使用情况而定
- 在远程开发机上指定JDK版本
- 1 vscode的语言工具LanguageSupport for Java 不再支持java8;因此我们还需要在开发机上安装java11以上版本的JDK
- 2 比如可以安装JDK16
sudo apt update
sudo apt install openjdk-16-jdk # dev host ubuntu system
- vscode的语言工具需要java11以上版本,但是运行的时候可以指定仍然使用java8.此时配置vscode Cmd shift P (mac 命令): select “configure Java Runtime“
配置远程开发机
- Cmd Shift P (Mac 命令): typing “remote settings“
- Select Preference: Open Remote Settings (SSH: your host)
- 用下面的内容替换setting.json中的内容
{
"workbench.colorTheme": "Default Dark ",
"maven.terminal.useJavaHome": true,
"java.help.firstView": "gettingStarted",
"files.exclude": {
"**/.classpath": true,
"**/.project": true,
"**/.settings": true,
"**/.factorypath": true
},
"java.configuration.maven.globalSettings": "/usr/share/maven/conf/settings.xml",
"java.maven.downloadSources": true,
"java.eclipse.downloadSources": true,
"java.configuration.maven.userSettings": "/usr/share/maven/conf/settings.xml",
"maven.executable.path": "/usr/bin/mvn",
"java.configuration.runtimes": [
{
"name": "JavaSE-1.8",
"path": "/usr/lib/jvm/java-8-openjdk-amd64"
},
],
}
运行和调试
- git clone https**.git
- 命令行方法
- 1 mvn package -Dmaven.test.skip=true
- 2 java -jar target/***.jar
- 单步调试debug
- 进入main class
- 右键run 或者debug即可