我在我的 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
为什么我会收到此异常,因为它们的版本相同?
最佳答案
我仍然不知道到底是什么问题,但是当我将 Tomcat 升级到 7.0.52 时它解决了。
关于java - 不支持的 major.minor 版本 51.0 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22707501/