我用Jenkins(版本2.164.1和JDK 1.8)构建了我的项目(JDK版本1.7)
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
</plugins>
</build>
然后我得到了一个jar文件, 当我解压缩jar文件并打开MANIFEST.MF时
Build-Jdk:1.8.0_131
然后我跑步
javap -verbose MyClass.class | grep "major"
major version: 51
类文件JDK版本为1.7
我的项目需要与JDK1.7一起运行,这有问题吗?
答案 0 :(得分:2)
要添加Eugene的评论:
Build-Jdk
会告诉您用于编译的JDK的确切版本(在您的情况下为1.8.0_131)。该JDK可以构建具有各种兼容性级别的代码。这些级别在maven-compiler-plugin中配置。因此,您可以使用Java 1.8构建与Java 1.7兼容的代码,这也许正是您想要的。
您可能会问Build-Jdk
版本是什么:它有助于您查找可能由JDK中的错误或其他不兼容性引起的问题。