我在我的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机器上,我将我的web项目导出到带有Eclipse的war文件,它的编译器版本是1.7,我在我的项目的属性中检查了它,在Java Compiler部分,配置如下:
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
为什么我会收到此异常,因为它们的版本相同?
答案 0 :(得分:0)
我仍然不知道究竟是什么问题但是当我将Tomcat升级到7.0.52时它已经解决了。
答案 1 :(得分:0)
我知道这个主题是关于Tomcat的,但是我遇到了与Glassfish相同的问题,也许它可能会有所帮助 - 我已经将Glassfich的java版本改为java 1.8(安装后:) :)