1
我在使用Oracle Java 1.7的Windows操作系統上使用Ant構建了一個jar文件。當我部署我的CentOS機器上的罐子(已WAS 8.5.5)開放JDK 1.8運行,出現以下錯誤:JVMCFRE003錯誤的主要版本
java.lang.UnsupportedClassVersionError: JVMCFRE003 bad major version; class=com/ac/ps/ft/home/ad/cr/testclass, offset=6
at java.lang.ClassLoader.defineClassImpl(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:295)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:154)
at com.ibm.ws.classloader.CompoundClassLoader._defineClass(CompoundClassLoader.java:853)
at com.ibm.ws.classloader.CompoundClassLoader.localFindClass(CompoundClassLoader.java:763)
at com.ibm.ws.classloader.CompoundClassLoader.loadClass(CompoundClassLoader.java:586)
at java.lang.ClassLoader.loadClass(ClassLoader.java:690)
at java.lang.Class.forNameImpl(Native Method)
at java.lang.Class.forName(Class.java:182)
我不知道究竟是什麼的問題。我試過用Java 1.8編譯,但它仍然給出了相同的錯誤。請幫忙。
你可以在messages.log中三重檢查你的java版本嗎?您的運行時間可能與您想象的不同/更老。 – covener
加上這個,用於編譯的JDK告訴我們一些,但不是全部。如果您有一個十六進制編輯器,您可以通過查看字節偏移量6和7來明確查看.class的符合性級別:https://en.wikipedia.org/wiki/Java_class_file#General_layout – ewhoch
@covener堆棧跟蹤說明了這一點是完整的配置文件,所以消息頭將在SystemOut.log中。我懷疑正在使用默認的Java 6。 –