gpt4 book ai didi

java - 编译一个版本 - eclipse,maven

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

我最近被一些代码刺痛了,这些代码使它在我们的部署周期中没有抛出任何编译错误(我们认为)......

有问题的代码正在使用自 Java 1.7 以来的新静态方法 Integer.compare

服务器环境运行在Java 1.6上。虽然我们的开发环境安装了 Java 1.7。

我们的假设是,将项目首选项设置为 JavaSE-1.6 合规性至少会给我们提供有关代码的编译警告,但是在 eclipse 中看不到任何警告或错误。

项目 > 属性 > java 编译器 > JDK 合规性 > 在 java 构建路径上使用来自执行环境“JavaSE-1.6”的合规性

其次,我们使用 maven 编译最终部署。 pom 明确指示符合 1.6 编译器:

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<optimize>true</optimize>
</configuration>
</plugin>

然而,maven 构建成功运行并出现问题代码。

当代码在比它正在编译的版本更早的 Jvm 中无法运行时,我如何告诉 maven 和 eclipse 都失败?

谢谢,保罗。

最佳答案

当您使用不向后兼容的 API 时,使用 Maven 动物嗅探器插件来告诉您。我还被告知 Java 1.7 具有此功能,但我个人没有这方面的经验。

关于java - 编译一个版本 - eclipse,maven,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9763888/

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