【发布时间】:2023-04-04 11:25:01
【问题描述】:
我从源代码构建了我的 jdk-11 (11.0.12) 版本。我在 Intellj 中检查了以前项目的 jdk,一切都编译并启动,没有错误,
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>11</source>
<target>11</target>
<encoding>${sourceEncoding}</encoding>
</configuration>
</plugin>
但是当我使用 maven-compiler-plugin 并尝试命令时:package war-file 他告诉我
Maven 3.3.1+ 需要 JDK 1.7+。请设置合适的JDK
其他 jdk(例如 corretto-11)正常工作。 什么问题?
我的 java 版本(我自己构建了 JDK)
openjdk version "11.0.12-internal" 2021-07-20 OpenJDK Runtime Environment (fastdebug build 11.0.12-internal+0-adhoc.Eugene.jdk11u-c354f2ee0de8)
OpenJDK 64-Bit Server VM (fastdebug build 11.0.12-internal+0-adhoc.Eugene.jdk11u-c354f2ee0de8, mixed mode
【问题讨论】:
-
问题是您正在使用旧版本的 jdk 构建,而不是您认为正在构建的那个。看到您使用的是 Maven 3.3.1,它会抱怨说正在使用的 jdk 早于 1.7,这是使用 Maven 3.3.1 的最低要求,特别是因为您希望它编译为 Java 11。
-
我使用 openjdk-11 构建了我的 jdk。当我将 JDK 用于 Maven Runner 时,IntelliJ IDEA 中出现了问题
-
“我构建了我的 jdk”,不,你没有。毫无疑问,您安装了一个,但很明显您的 maven 使用的是较旧的 jdk,而不是您安装的最新版本。
-
这是 IntelliJ IDEA 中的错误。他们会修复它。