Tomcat6 和 JRE7 兼容性问题。不支持的 major.minor 版本 51.0
Posted
技术标签:
【中文标题】Tomcat6 和 JRE7 兼容性问题。不支持的 major.minor 版本 51.0【英文标题】:Tomcat6 and JRE7 compatibility issue. Unsupported major.minor version 51.0 【发布时间】:2013-07-02 22:04:42 【问题描述】:我有一个用 JRE7 编译的 Web 应用程序,现在我想在 Tomcat6 上运行它。当我启动我的应用程序时,我在日志中看到异常:
Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
此异常来自实现 ServletContextListener 的类。
这是否意味着我必须将 Tomcat7 用于使用 JRE7 编译的代码?有解决方法吗?任何信息都将是有价值的。
【问题讨论】:
可能重复***.com/questions/9592791/tomcat6-and-java-7 @SotiriosDelimanolis 你忘了投票结束 与Tomcat6无关。这是您尝试使用 Java 6 JVM 运行 Java 7 字节码。 ***.com/questions/10382929/… 【参考方案1】:您正在尝试使用 Java 6 运行 Java 7 字节码。您需要将其部署到 Tomcat 7 或使用 JDK 1.6 重新编译。检查您的 Tomcat 使用什么 JRE。我猜是 Java 6 JVM。
【讨论】:
你完全正确,我在 JAVA_HOME 中的 catalina.sh 文件引用了 1.6 JDK。感谢您的帮助!【参考方案2】:您可以通过其状态页面查看服务器信息:
running-tomcat-url/manager/status
在该页面上,您可以看到运行 Tomcat 的 Java 版本
【讨论】:
以上是关于Tomcat6 和 JRE7 兼容性问题。不支持的 major.minor 版本 51.0的主要内容,如果未能解决你的问题,请参考以下文章
ubuntu 11.10 安装apache2 tomcat6
tomcat6-maven-plugin和tomcat有啥区别