它可能看起来像一个现有问题..但其他答案并没有帮助我。 :(
这是我正在做的事情 1.在Eclipse中使用JDK1.7从Eclipse Web项目构建war文件(Windows 8) 2.将其复制到unix tomcat7 webapps文件夹中。 Unix也有java1.7。如果我运行java -version,它会说1.7 3.现在运行tomcat。它会抛出一个类的错误 不支持的major.minor版本51.0
不确定我在这里缺少什么。
答案 0 :(得分:2)
它可能看起来像一个现有问题..但其他答案并没有帮助我。 :(
这就像现有的问题。我可以保证。
每次问题都基本相同。代码已经与Java 7一起编译,并且您正在运行它在较旧的JVM上运行。这就是错误信息的含义。总是
因此,您需要弄清楚代码在较旧的JVM上运行的原因。由于代码在Tomcat中运行,这意味着您需要弄清楚:
这通常归结为识别和读取正在使用的启动脚本或脚本,并确定其环境变量设置的来源。
答案 1 :(得分:1)
消息“Unsupported major.minor version”表示您在jvm中运行java,其版本低于用于编译代码的版本。请注意,Java是向后兼容的,因此您可以在java 7上运行java 6,但不能相反。
要验证tomcat的版本,请使用:./ version.sh
当我在我的tomcat上运行时,我得到了这个:
<...>/usr/local/apache-tomcat-7.0.50/bin# ./version.sh
Using CATALINA_BASE: /usr/local/apache-tomcat-7.0.50
Using CATALINA_HOME: /usr/local/apache-tomcat-7.0.50
Using CATALINA_TMPDIR: /usr/local/apache-tomcat-7.0.50/temp
Using JRE_HOME: /usr/local/java
Using CLASSPATH: /usr/local/apache-tomcat-7.0.50/bin/bootstrap.jar:/usr/local/apache-tomcat-7.0.50/bin/tomcat-juli.jar
Server version: Apache Tomcat/7.0.50
Server built: Dec 19 2013 10:18:12
Server number: 7.0.50.0
OS Name: Linux
OS Version: 2.6.32-47-server
Architecture: amd64
JVM Version: 1.7.0_17-b02
JVM Vendor: Oracle Corporation
请注意条目 JVM版本
您可以采取哪些措施来解决问题:使用相同版本编译您的类,或者安装最新版本的Tomcat。