首页 > 解决方案 > 通过 Visual Studio Code 导出 JAR 时按项目指定 java 版本

问题描述

我已经在VSCode的设置中成功配置了java.configuration.runtimes,以便指定我要使用什么版本的Java来编译项目,并且可以成功导出编译好的JAR。我需要知道的是,如果我有多个项目要使用不同版本的 Java 导出,这是一个选项吗?

看来 java.configuration.runtimes 设置是在 IDE 级别,而不是在项目级别。

标签: javavisual-studio-code

解决方案


是的,您可以通过设置将项目导出为 jar 时指定 java 版本:

"java.configuration.runtimes": [
  {
    "name": "JavaSE-11",
    "path": "/path/to/jdk11",
  },
  {
    "name": "JavaSE-14",
    "path": "/path/to/jdk-14",
    "default": true
  },
]

设置default:true的位置将决定编译项目时的 java 版本。

通过上述设置,我创建了一个项目,当按 F5 编译并运行时: 在此处输入图像描述

可以看到java扩展确实是用jdk14编译的.java文件,翻到黄色下划线的目录,有一个.class文件。

使用命令:

javap -verbose .class

会显示很多信息,major version的值也代表java版本: 在此处输入图像描述

JDK11的主版本是55,JDK14的主版本是58,所以设置确实有效。您可以在用户设置中添加它,然后将项目导出为具有不同 java 版本的 jar。


推荐阅读