9.1 KiB
9.1 KiB
Java开发支持
插件选择
-
根据系统上能够安装的JDK版本和Kylin-IDE版本做选择。注意以下两套Java支持插件组会相互冲突,只能二选一
-
如果系统上能够安装JDK17或以上版本,Kylin-IDE版本为1.1.0以上,推荐使用较主流的开源插件:
- Extesion Pack for Java(vscjava.vscode-java-pack),这套开源插件以redhat提供的Java语言支持插件为基础,是插件市场中较为主流的Java开发插件。通过安装此插件可安装Java插件组,包括以下插件,也可以单独安装:
- Language Support for Java™ by Red Hat(redhat.java):Java语言编辑支持插件
- Debugger for Java(vscjava.vscode-java-debug):Java调试支持插件
- Test Runner for Java(vscjava.vscode-java-test):Java测试支持插件
- Maven for Java(vscjava.vscode-maven):Maven构建支持插件
- Gradle for Java(vscjava.vscode-gradle):Gradle构建支持插件
- Project Manager for Java(vscjava.vscode-java-dependency):Java项目创建
- IntelliCode(此插件非开源,可以卸载或不安装。VisualStudioExptTeam.vscodeintellicode):AI代码补全
- Spring Boot Extension Pack(vmware.vscode-boot-dev-pack):Spring Boot支持插件组,安装此插件将安装以下插件:
- Spring Boot Tools(vmware.vscode-spring-boot):Spring Boot配置文件编辑支持,Java编辑支持(依赖上文redhat.java插件)
- Spring Initializr Java Support(vscjava.vscode-spring-initializr):Spring Boot项目创建支持
- Spring Boot Dashboard(vscjava.vscode-spring-boot-dashboard):管理workspace中的Spring Boot项目(依赖vmware.vscode-spring-boot、redhat.java、vscjava.vscode-java-debug)
- 上述插件可以在插件市场中检索到
- Extesion Pack for Java(vscjava.vscode-java-pack),这套开源插件以redhat提供的Java语言支持插件为基础,是插件市场中较为主流的Java开发插件。通过安装此插件可安装Java插件组,包括以下插件,也可以单独安装:
-
如果系统上能够安装JDK11或以上版本,或Kylin-IDE版本为1.1.0以下,或其他插件API较老旧版本的VSCode,推荐使用:
- Java Pack(kylinideteam.vscode-java-pack),此插件组基于较低版本开源Java支持插件改造以支持JDK11
- Java(kylinideteam.java):Java语言编辑支持插件
- Debugger for Java(kylinideteam.vscode-java-debug):Java调试支持插件
- Test Runner for Java(kylinideteam.vscode-java-test):Java测试支持插件
- Maven for Java(kylinideteam.vscode-maven):Maven构建支持插件
- Gradle for Java(kylinideteam.vscode-gradle):Gradle构建支持插件
- Project Manager for Java(kylinideteam.vscode-java-dependency):Java项目创建
- 上述插件可以在插件市场中检索到:在插件视图中找到KYLIN-IDE推荐的插件,选择Kylin-IDE(KylinCode)插件分类->Java语言支持
- Java Pack(kylinideteam.vscode-java-pack),此插件组基于较低版本开源Java支持插件改造以支持JDK11
系统软件安装
-
安装JDK
- 命令举例
sudo apt install openjdk-11-jdk
sudo apt install openjdk-17-jdk
sudo yum install java-11-openjdk-devel
- 命令举例
-
Maven与JDK版本有对应关系
- 在互联网上容易检索到JDK版本对应的最低maven版本
- 在JDK17环境中,系统上的maven软件包可能不符合要求,需要从maven官网或从其他渠道安装高版本maven软件
JDK配置
- 请区分插件需要的JDK运行环境和项目开发使用JDK环境
- 插件需要的JDK运行环境
- Java支持插件中使用了Java编写的程序,例如Java编辑支持插件的语言服务就是使用Java编写的,因此插件运行需要一个JDK环境
- 通常情况下,只要安装了JDK11或以上版本,可以不用再手动配置
java.jdt.ls.java.home
java.jdt.ls.java.home
配置方法- 在设置中搜索
java.jdt.ls.java.home
- 修改“用户”设置,则对用户下的所有工程生效
- 修改“工作区”设置,仅对当前工作区项目生效,如果“工作区”设置与“用户”设置不同,则“工作区”设置优先于“用户”设置
- 编辑配置文件,
"java.jdt.ls.java.home": "JDK路径根目录"
- 如果未设置
java.jdt.ls.java.home
,则按以下顺序做搜索,找到一个满足最低环境的(JDK11)JDKJDK_HOME
环境变量JAVA_HOME
环境变量- 当前系统路径
- 在设置中搜索
- 项目开发使用的JDK环境
- 项目开发使用的JDK环境是指项目编译、调试使用的JDK环境
- 项目开发使用的JDK环境可以配置多个,在设置中搜索
java.configuration.runtimes
, 编辑json配置文件,其中default
字段用于指定一个默认的JDK环境,会根据默认或项目的源级别选择最佳版本,setting.json文件配置举例:"java.configuration.runtimes": [ { "name": "JavaSE-1.8", "path": "/usr/lib/jvm/java-8-openjdk-amd64", }, { "name": "JavaSE-11", "path": "/usr/lib/jvm/java-11-openjdk-amd64", "default": true }, { "name": "JavaSE-17", "path": "/usr/lib/jvm/java-17-openjdk-amd64", }, ]
- 注意
name
字段只能填指定值,填错时有黄色波浪线提示,可以将鼠标放在波浪线上,会有指定值说明
- 注意
- 在不配置
java.configuration.runtimes
的情况下,也可以通过菜单配置JDK默认运行环境- 方法1:在Java项目中,资源管理器视图下方,有Java Project配置小窗口,点击小窗口右上角的“...”按钮,选择Configure Java Runtime,即可选择默认的JDK
- 方法2:或ctrl+shift+P打开命令面板,搜索Configure Java Runtime,即可选择默认的JDK
- 注意:当在setting.json中配置了
java.configuration.runtimes
后,将以setting.json配置为准,上述方法将不起作用
- 系统中安装了多个JDK版本,默认使用哪个
- 系统中通常可以安装多个JDK版本,通过alternatives机制,系统默认Java相关命令会关联到某一个JDK中
- 通过
ls -lh
命令能够看到/usr/bin/java
链接到了/etc/alternatives/java
,它指向了一个JDK版本中的java
命令
- 通过
- 修改
/etc/alternatives/
下的链接不推荐直接修改链接的方法,而使用update-alternatives命令- 例如,修改
/usr/bin/java
指向,执行sudo update-alternatives --config java
,输入序号即可完成修改
- 例如,修改
- 常用的主要是
java
、javac
命令,其他java相关命令可以根据需要修改指向,命令举例sudo update-alternatives --config java
sudo update-alternatives --config javac
- 系统中通常可以安装多个JDK版本,通过alternatives机制,系统默认Java相关命令会关联到某一个JDK中
- 注意:若系统中安装了多个JDK,task.json中,command字段中若需调用javac、java命令,有些方法可以区分调用的是哪个JDK中的命令
- 方法1:调用命令时写命令的绝对路径,直接写明从哪个JDK中调用
- 方法2:使用update-alternatives命令修改好系统默认的相关命令,在命令行中确认修改生效,task.json中即可直接使用java或javac命令
项目(工程)管理
-
已有项目
- 打开项目文件夹,Java支持插件会对项目进行解析
-
创建项目
- 安装项目创建插件Kylin Project Manager(kylinideteam.project-manager),注意spring boot项目仅在JDK17环境中支持
- 安装插件后,入口:文件主菜单-->新建项目
- Java类项目创建主要基于开源插件提供支持
- 详细见项目管理章节
-
项目配置
- 需要了解基本的task.json、launch.json配置方法,见如何配置工程的构建、调试、运行章节
- 在项目操作区中(左侧资源管理器视图下方的折叠菜单)可执行构建操作或task中的其他任务
- 一个简单Java项目task.json的配置例子如下
{ "label": "build", "type": "shell", "options": { "cwd": "${workspaceFolder}" }, "command": "/usr/lib/jvm/java-11-openjdk-amd64/bin/javac", "args": [ "src/main.java", "-sourcepath", "src", "-classpath", "${config:java.project.referencedLibraries}", "-d", "${config:java.project.outputPath}" ] }, { "label": "run", "type": "shell", "options": { "cwd": "${workspaceFolder}" }, "command": "java", "args": [ "-cp", "${config:java.project.outputPath}", "main" ], "dependsOn": [ "javac" ] }
调试
- 一键调试
- 对于简单的Java程序文件的调试,不需要进行配置,点击调试按钮或菜单可以直接调试
- 对于较复杂的Java程序,需要配置launch.json
- 配置方法见如何配置工程的构建、调试、运行章节和Java Debug插件readme
- 在最左侧点击插件图标,打开插件视图,在列表中找到插件条目,点击插件条目即可查看插件readme
- 配置方法见如何配置工程的构建、调试、运行章节和Java Debug插件readme