Java maven没有使用正确的jdk.我如何指定或更改它使用的jdk ?

  • 本文关键字:jdk 何指定 Java maven java maven
  • 更新时间 :
  • 英文 :


我的项目要求我使用在java 13中添加的var关键字,但它一直说var不能被解析为类型。我使用visual studio代码作为我的IDE,如果这是任何重要的

我当前的jdk是openjdk 17.0.5 2022-10-18。我的JAVA_HOME环境是最新的,所以它不是。所以任何修复都会有帮助的。

配置使用JDK 11或更高版本的最简单方法是首先使用最新版本的maven-compiler-plugin:

<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.10.1</version>
</plugin>
..
</plugins>
</pluginManagement>
</build>

您现在可以通过下面的属性来配置所使用的语言级别(需要最少的JDk)(编码的定义只是一个应该定义的示例)。<maven.compiler.release>11</maven.compiler.release>通过JDK编译器的--release选项定义它。这意味着您必须至少使用JDK 11。如果您想使用语言级别17,您只需将其更改为17。

<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.release>11</maven.compiler.release>
</properties>

另一种方法是像这样直接在maven-compiler-plugin中使用配置:

<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.10.1</version>
<configuration>
<release>11</release>
</configuration>
</plugin>
..
</plugins>
</pluginManagement>
</build>

最新更新