JVMCFRE003 bad major version

Ich habe build eine jar-Datei mit Ant auf meinem Windows-OS mit Oracle-Java 1.7. Wenn ich bereitstellen das Glas auf meinem CentOS-Maschine (die WAR 8.5.5) unter open JDK 1.8, erhalten Sie die folgende Fehlermeldung:

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)

Ich bin mir nicht sicher, was genau das problem ist. Ich habe versucht das kompilieren mit Java 1.8 aber es gibt noch den gleichen Fehler. Bitte helfen Sie.

Können Sie triple-überprüfen Sie Ihre java-version in den Nachrichten.log? Ihre Laufzeit ist wahrscheinlich anders/älter, als Sie denken.
Hinzufügen auf, dass die JDK verwendet, um zu kompilieren sagt uns, dass einige, aber nicht alle. Wenn Sie einen hex-editor praktisch, Sie können finden definitiv das compliance-Niveau der .Klasse durch die Suche auf byte-offset 6 und 7: en.wikipedia.org/wiki/Java_class_file#General_layout
Der stack-trace, der dies sagt, volles Profil, so wird der Kopfzeile der Nachricht würde in der SystemOut.log. Ich vermute, dass die Standard-Java 6 verwendet wird.

InformationsquelleAutor Ekta | 2016-03-03

Schreibe einen Kommentar