java.lang.UnsupportedClassVersionError:myApp:不支持的major.minor版本51.0(无法加载类myApp)在Linux上

时间:2012-09-08 13:28:29

标签: java linux tomcat

最近,我在Linux Centos上遇到了Apache Tomcat 6.0.35的问题。 我收到了错误 -

java.lang.UnsupportedClassVersionError: myApp : Unsupported major.minor version 51.0 (unable to load class myApp)

当我发出命令时 -

java -version

显示

java version "1.6.0_22"
OpenJDK Runtime Environment (IcedTea6 1.10.9) (rhel-1.28.1.10.9.el5_8-x86_64)
OpenJDK 64-Bit Server VM (build 20.0-b11, mixed mode)

同样当我发出命令时 -

javac -version

显示 -

javac 1.6.0_22

找到Java我给出命令 -

whereis java

输出是 -

java: /usr/bin/java /etc/java /usr/lib/java /usr/share/java /usr/share/man/man1/java.1.gz

which java

显示 -

/usr/bin/java

也适用于

which javac

输出

/usr/bin/javac

myApp 是在Windows中开发的java项目,并在 Linux 上的Tomcats的 webapp 目录中上载WAR文件。

我没有得到正在发生的事情?请有人帮我解决这个问题吗?

提前致谢。

3 个答案:

答案 0 :(得分:6)

您需要Java 7运行时,而不是Java 6.有关此问题的详细信息,请参阅http://en.wikipedia.org/wiki/Java_class_file#General_layout

或者,您需要查找和/或重新编译代码以与Java 6兼容。

答案 1 :(得分:3)

异常是因为yor代码的编译版本高于您尝试运行它的版本。在您的Windows机器中,您可能正在使用Windows 7来构建战争。检查Windows计算机中的javac -version

答案 2 :(得分:1)

看起来你的代码是用jdk7编译的?