java - 设置 eclipse java compiler compliance level 1.6 是否与使用 JDK 1.6 编译相同?

标签 java eclipse javac

我正在尝试使用第三方 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/

相关文章:

java 。如何通过反射获取不可为空的字段?

java - Eclipse Standard 还是面向 Java 开发人员的 Eclipse IDE?

java编译环境不适用于windows

Java运行时编译和类文件生成

java - Java中的奇怪错误

java - 将 Eclipse ADT 项目制作到 android Studio 时缺少 gradle.properties 文件

java - 根据 array1 的随机项按索引选择 array2 项

java - HikariCp 无法连接到 DB2 数据库

eclipse - 如何在不直接访问 Internet 的情况下为 Eclipse/STS 安装 Groovy 和 Grails 插件?

java - 使 EntityManager 可序列化