【发布时间】:2020-04-12 22:11:36
【问题描述】:
我目前在本地机器上使用 jdk 版本为 11,使用 JAVA_HOME 设置。
我需要运行一个 java_version 为 9 的 maven 项目。 做同样的事情参考了https://www.baeldung.com/maven-java-version
这是我的 pom.xml 文件
<properties>
<java.version>8</java.version>
<maven.compiler.plugin.version>3.8.0</maven.compiler.plugin.version>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>${maven.compiler.plugin.version}</version>
<configuration>
<release>8</release>
</configuration>
</plugin>
</plugins>
</build>
然后我运行命令“mvn clean install”,生成的 jar 文件在其清单文件中的 java-version 为 11。 这是生成的jar的Manifest文件的sn-p
Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Created-By: Apache Maven 3.5.0
Built-By: test
Build-Jdk: 11.0.2
为什么它仍然选择java版本为11,为什么不是8?
【问题讨论】:
-
您可以执行
mvn -v来检查您的Maven 配置的Java 版本(~/.mvnrc)。此外,请注意release作为标志只能由 Java-9(值 9)及更高版本标识。除此之外,Java-8 应该是1.8而不是8。 -
我不确定您是否知道这一点:您构建的 JDK 和您构建的 Java 版本可能不同。 for Java 8 with JDK 11 是完全可以构建的。
标签: java maven version pom.xml java-11