在Eclipse中,我已经将Java编译器遵从级别设置为1.6。
一个同事在一台只运行Java6的机器上运行了一些二进制文件,而Unsupported major.minor version: 51的执行失败了。
我们还没有一个自动构建/CI系统:一个Ant任务从bin/的自动构建工作区函数编译的裸露的JAR目录中构建一个JAR,而不是(还*!)使用javac。我只在我的机器上运行JDK 7,没有JDK 6的踪迹。
问题非常简单:设置遵从级别是否会影响输出二进制版本,还是只会阻止您使用新运行时的类型/语法?
*Yet意味着我们正在努力
发布于 2015-02-06 08:28:55
正如您提到的,您已经在JDK 7上编译了代码,而您的同事使用JAVA 6二进制文件运行了它。这就是他/她失败的原因“不支持的major.minor版本: 51”。
正如Jigar所指出的,设置遵从级别只需使用eclipse来根据指定的JDK调整警告/建议,但代码实际上将只使用已安装的JREs/JDK进行编译。
请安装JREs 6,然后转到preferences -> JAVA ->已安装的JREs-> Add ->从您的计算机中选择JDK1.6。清理和建立你的项目。这将编译您的代码以便能够在JRE 6上运行。
希望能帮上忙。
发布于 2015-02-06 08:20:21
遵从性级别是eclipse在编译/警告/建议特性时理解语言特性的级别。
你也需要设置
将JRE安装到JDK的适当版本(注: JDK)
已安装的JRE位于
首选项-> Java ->已安装
https://stackoverflow.com/questions/28361325
复制相似问题