问题描述
我有一个用 JRE7 编译的 Web 应用程序,现在我想在 Tomcat6 上运行它.当我启动我的应用程序时,我在日志中看到异常:
I have a web app compiled with JRE7 and now i'd like to run it on Tomcat6. When I launch my app I see exception in the logs:
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 的类.
This exception comes from the class that implements ServletContextListener.
这是否意味着我必须将 Tomcat7 用于使用 JRE7 编译的代码?有解决方法吗?任何信息都是有价值的.
Does that mean I have to use Tomcat7 for code compiled with JRE7? Is there a workaround? Any information will be valuable.
推荐答案
您正在尝试使用 Java 6 运行 Java 7 字节码.您需要将其部署到 Tomcat 7 或使用 JDK 1.6 重新编译.检查您的 Tomcat 使用什么 JRE.我猜是 Java 6 JVM.
You're attempting to run Java 7 bytecode with a Java 6. You need to deploy it to Tomcat 7 or recompile using JDK 1.6. Check what JRE your Tomcat uses. I guess it's Java 6 JVM.
这篇关于Tomcat6 和 JRE7 兼容性问题.不支持的 Major.minor 版本 51.0的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!