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

e0bqpujr  于 2022-11-28  发布在  Maven
关注(0)|答案(1)|浏览(158)

我的项目要求我使用java 13中添加的var关键字,但是它一直说var不能被解析为type。如果这很重要的话,我使用visual studio代码作为我的IDE
我目前的JDK是openjdk 17. 0. 5 2022-10-18。我的JAVA_HOME环境是最新的,所以它不是那样的。所以任何修复都会很有帮助。

ej83mcc0

ej83mcc01#

要配置为使用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编译器插件的配置,如下所示:

<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>

相关问题