gpt4 book ai didi

java - maven 正在使用 java 1.7 编译代码,但我希望它使用 1.8 进行编译

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:52:34 24 4
gpt4 key购买 nike

我正在使用 Maven 并想使用 JDK 1.8 编译我的代码。
所以我安装了JDK 1.8
然后(这是在 Windows 上)设置“路径”变量和“JAVA_HOME”

PATH=C:\construction\tools\ibm_sdk80\bin;C:\construction\tools\apache-maven-3.2.5\bin;

Java 主页:

C:\Users\satish.marathe>set JAVA_HOME
JAVA_HOME=C:\construction\tools\ibm_sdk80

java版本给我:

C:\Users\satish.marathe>java -version
java version "1.8.0"
Java(TM) SE Runtime Environment (build pwa6480sr1fp10-20150711_01(SR1 FP10))
IBM J9 VM (build 2.8, JRE 1.8.0 Windows 7 amd64-64 Compressed References 20150630_255633 (JIT enabled, AOT enabled)
J9VM - R28_jvm.28_20150630_1742_B255633
JIT - tr.r14.java_20150625_95081.01
GC - R28_jvm.28_20150630_1742_B255633_CMPRSS
J9CL - 20150630_255633)
JCL - 20150711_01 based on Oracle jdk8u51-b15

javac 版本告诉我:

C:\Users\satish.marathe>javac -version
javac 1.8.0-internal

所以一切似乎都指向 java 1.8
现在我编译我的项目使用:

mvn clean install  

然而,当我检查编译类时,我看到主要版本是 51 - 这意味着它是 Java 1.7
对于那些想知道如何在类文件中找到 java 版本的人! :)

javap -verbose <<your_package>>.<<your_class>> | findStr "major"  

编辑 1:
我忘了包含 maven -version 的输出,所以这里是:

C:>mvn -version Apache Maven 3.2.5 (12a6b3acb947671f09b81f49094c53f426d8cea1; 2014-12-14T22:59:23+05:30)
Maven home: C:\construction\tools\apache-maven-3.2.5\bin..
Java version: 1.8.0, vendor: IBM Corporation
Java home: C:\construction\tools\ibm_sdk80\jre
Default locale: en_US, platform encoding: Cp1252
OS name: "windows 7", version: "6.1", arch: "amd64", family: "dos"
C:>

好的 - 所以我的问题是:
我的 pom 中没有任何 maven_compiler_plugin 条目
所以这是必需的吗?
没有那个条目 - maven 不应该简单地从系统中选择我的 java 版本 1.8 并编译代码(它似乎没有这样做显然)
谢谢

最佳答案

您可以使用mvn -version 来查看Maven 使用的java 版本。

您的问题:我的 pom 中没有任何 maven_compiler_plugin 条目,所以这是必需的吗?

回答:如果您想要不同的编译器版本来编译您的源代码,那么您需要使用 maven-compiler-plugin 指定:

<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>

更多信息,请查看 Maven 网站:maven-compiler-plugin

By default The Compiler Plugin is used to compile the sources of your project. Since 3.0, the default compiler is javax.tools.JavaCompiler (if you are using java 1.6) and is used to compile Java sources.

关于java - maven 正在使用 java 1.7 编译代码,但我希望它使用 1.8 进行编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31803442/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com