gpt4 book ai didi

java - Jenkins 中的编译错误,但 Eclipse 中没有

转载 作者:搜寻专家 更新时间:2023-11-01 02:30:18 25 4
gpt4 key购买 nike

我们正在 Eclipse Indigo 下编写一个 Java6 项目,目前我们在 Eclipse 下的开发环境与我们与 Jenkins 的集成环境之间存在一些编译差异。

  • 我们的 Eclipse 在 带有 JDK 1.6.0_30 的 Windows 7 下
  • Jenkins 在带有 JDK 1.6.0_31 的 Linux 下(也使用 1.6.0_24 版进行了测试)。

事实是,我们在 Jenkins 上遇到了一些编译错误,例如:

  • both define … but with unrelated return types当一个接口(interface)继承自两个声明相同方法(具有不同但兼容的类型)的接口(interface)时
  • no unique maximal instance exists for type variable B with upper bounds I,…对于一些返回原始类型的方法 B而不是更具体的 B<C> .

这里的问题不是解决这个问题;通过对我们的源代码进行一些更改,我们成功编译了 Jenkins。

问题是:为什么 Jenkins 以不同于我们的 Eclipse 的方式编译?是否为编译器或 JVM 提供了一些神奇的参数可以产生如此大的差异?

最佳答案

Eclipse 使用自己的编译器。在极少数情况下,Eclipse 编译器和 OpenJDK 编译器之间几乎没有区别。有关更多一般信息,另请参阅:

http://www.eclipse.org/jdt/core/

How does Eclipse compile classes with only a JRE?

编辑:

接口(interface)的编译错误可能与这个 JDK 错误有关:http://bugs.sun.com/view_bug.do?bug_id=6908259

关于java - Jenkins 中的编译错误,但 Eclipse 中没有,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11032988/

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