我正在尝试使用第三方 API,我在其中获得了对 JDK 1.6 之前的第三方 API 的支持。
我还有其他几个使用 JDK 1.7 构建的项目,作为产品的一部分,我还打包了 JRE 1.7。
如果编译器合规级别设置为 JDK 1.6,使用 JDK 1.7 库编译和运行会产生与使用 JDK 1.6 编译和运行相同的结果吗?
当编译器合规级别设置为 JDK 1.6 时,从第三方供应商处获得支持是否安全。
更新: 我假设在 eclipse 中设置编译器级别与设置 javac 的 -source & -target 选项相同。
我不确定使用 JDK 1.7 将源和目标设置为 6/1.6 进行编译是否与在 jdk1.6 中编译相同。
最佳答案
问题在于版本之间 Java API 的更改。有一些类和方法在 Java 7 中可用,但在 Java 6 中不可用,反之亦然。该代码可使用 Java 7 进行编译,但由于缺少类或方法而无法使用 Java 6 运行。
除非您使用 Java 6 JDK 进行编译,否则您无法 100% 确定。
关于java - 设置 eclipse java compiler compliance level 1.6 是否与使用 JDK 1.6 编译相同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27383851/