我正在使用maven,并希望使用JDK 1.8编译我的代码 .
所以我安装了JDK 1.8
然后(这是在Windows上)设置'path'变量和'JAVA_HOME'
PATH = C:\ construction \ tools \ ibm_sdk80 \ bin; C:\ construction \ tools \ apache-maven-3.2.5 \ bin;
java主页:
C:\ Users \ satish.marathe>设置JAVA_HOME JAVA_HOME = C:\ construction \ tools \ ibm_sdk80
java版给我:
C:\ Users \ satish.marathe> java -version java version“1.8.0”Java(TM)SE运行时环境(构建pwa6480sr1fp10-20150711_01(SR1 FP10))IBM J9 VM(build 2.8,JRE 1.8.0 Windows 7) amd64-64压缩参考20150630_255633(JIT使能,AOT使能)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基于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 <>.<> | findStr "major"
EDIT1:
我忘了包含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版本:1.8.0,供应商:IBM Corporation Java home:C:\ construction \ tools \ ibm_sdk80 \ jre默认语言环境:en_US,平台编码:Cp1252操作系统名称:“windows 7”,版本:“6.1”,arch:“amd64 “,家庭:”dos“C:>
好的 - 所以我的问题是:
我的pom中没有maven_compiler_plugin的任何条目
这是必要的吗?
没有那个条目 - 不应该maven只是从系统中选择我的java版本为1.8并编译代码(它似乎没有显然做)
谢谢