【发布时间】:2014-12-19 10:09:04
【问题描述】:
我在我的 ubuntu 服务器中使用 Tomcat 7.0.26,我已经安装了 Oracle JDK,这是输出
java -version 命令
java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode)
javac -version 命令的输出是:
javac 1.7.0_51
我没有手动指定 JAVA_HOME 和 JRE_HOME,我从 ppa:webupd8team 存储库安装了 JDK。
在我的 windows 机器上,我使用 Eclipse 将我的 web 项目导出到 war 文件,它的编译器版本是 1.7,我在我的项目的属性中检查了它,在 Java 编译器部分,配置如下:
Use compliance from execution environment 'JavaSE-1.7' on the Java Build Path
在我的 Eclipse 的 Installed JREs 部分,默认一个是 JDK 1.7.0_45。我还用
检查了我编译的 java 类的主要版本javap -verbose MyClass | findstr "major"
命令,它是 51。但我在 ubuntu 中从 Tomcat 得到以下异常:
java.lang.UnsupportedClassVersionError: com/maozturk/MyClass : Unsupported major.minor version 51.0
由于它们的版本相同,为什么我会收到此异常?
【问题讨论】:
-
您在 Java 6 下运行 Tomcat。
-
@Seelenvirtuose 我忘了指定Tomcat版本,我添加了它,版本是7.0.26