bad version number in class file

Copy file to shared folder java

While starting a Jboss process I am getting “Bad version number in .class file” error. What is the root cause?

 Exception in thread "main" java.lang.UnsupportedClassVersionError: Bad version number in .class file

at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
at java.net.URLClassLoader.access$100(URLClassLoader.java:56)

at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)

Check whether the class or jar file compiled with a higher version of java than the Jre running the jboss server. This can be checked by doing a “java -version” in the application server machine and check the MANIFEST.MF file in jar file.

Usually java is not backward compatible, so if the jar file is complied with higher version of java than the java running the application server process this issue occurs. To avoid this issue recompile the jar with the same version of java which runs the app server process. E.g: If 1.5.x JDK is used to run Java app server process then compiling the jar file with same 1.5.x JDK solves the issue

In case of any ©Copyright or missing credits issue please check CopyRights page for faster resolutions.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.