Java UnsupportedClassVersionError 问题

Java UnsupportedClassVersionError Issue

我理解当我在比 JVM 更新的版本中编译我的 java 文件时会导致 UnsupportedClassVersionError,class 文件将 运行 打开。

我正在开发一个程序,它将 运行 在 IBM i 系列机器上,即 运行ning Java 1.6。我已经交叉编译我的文件以使用 1.5 作为源值和目标值。实际使用的命令是:

javac -source 1.5 -target 1.5 -bootclasspath C:/dev/languages/java/jdk1.5.0_22/jre/lib/rt.jar -extdirs "" -classpath "c:/dev/QIBM/ProdData/OS400/jt400/lib/*;/psmssys/java/src/com/gy/as400/common;." $(find ./com/gy/as400/bladder/install/* | grep .java)

了解我正在 Win 7 机器上编译文件 运行ning Java 1.8.0_131

一旦 classes 被编译,如果我然后 运行

javap -verbose

在任何生成的 classes 上,主要版本显示 49,根据 this wiki article 应该与 JVM 1.5 及更高版本兼容。

我已经尝试交叉编译到 1.4,但这需要我重写我的大部分代码以不使用 FOR...EACH 和通用列表。

我在这里错过了什么。

谢谢@rdean400。

我开始思考并回顾我的传输日志,发现将 class 从我的开发箱移动到测试箱时发生了一些错误。我清除了所有现有的 class 文件并重新传输它们。这解决了 UnsupportedClassVersionError。