每当我使用 Maven 部署 Jenkins 构建时,它都会说我有 1.3 JDK,即使我安装了 1.7。
这是我使用增强的 for 循环时得到的错误日志的图片:
http://gyazo.com/d1c7e297199dbf8a8b6ba23efa5733ba.png
但是,我显然安装了 1.7 JDK。
http://gyazo.com/27b85ba9ea25579aa714b0e2586fd618.png
如果有人知道为什么会出现此问题以及如何解决它,请在下面发帖。
抱歉,我没有大量的格式化信息,但我不知道为什么会发生这种情况,因为我没有这么过时的 JDK 并且有来自 Oracle 的最新更新。 Maven 和 Jenkins 也全面更新。
谢谢。
最佳答案
maven的提示不是关于你的jdk版本,而是关于编译器的-source参数。较旧的 Maven 版本使用 maven-compiler-plugin 版本,默认情况下使用 -source 和 -target 1.3。
因此,您需要做的是将项目配置为使用更高的源和目标级别,以便使用 for every 循环:
(取自 https://maven.apache.org/plugins/maven-compiler-plugin/examples/set-compiler-source-and-target.html )
<project>
[...]
<build>
[...]
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.5</source>
<target>1.5</target>
</configuration>
</plugin>
</plugins>
[...]
</build>
[...]
</project>
请注意,只需设置 maven-compiler-plugin 的版本实际上就足够了,因为对于版本 3.1,默认是 1.5,但是显式包含源版本和目标版本是一种很好的方式在你的主 pom 中。
关于java - 由于JDK功能不受支持,Jenkins Maven编译失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21794010/