首页 文章

java.lang.UnsupportedClassVersionError:不支持的major.minor版本51.0(无法加载类frontend.listener.StartupListener)[复制]

提问于
浏览
33

可能重复:不支持的主要.minor版本51.0

我有eclipse indigo和tomcat 7.0.29 . 仍然没有Serlvets可以加载!我没有其他JDK或JRE比1.7一个!

  • Compilance level 1.7

  • JAVA_HOME指向JDK 1.7

  • JAVA_JRE指向JRE 1.7

  • 构建路径包含JDK 1.7

  • Java Facet 1.7

..但仍然不支持major.minor版本51.0

1 回答

  • 40

    当你做 java -version 时你的输出是多少?这将告诉您正在运行的JVM是什么版本 .

    不支持的major.minor版本51.0错误可能意味着:

    • 您的服务器运行的是较低的Java版本,然后是用于编译Servlet的Java版本,反之亦然

    无论哪种方式,卸载所有JVM运行时,包括JDK并下载最新版本并重新安装 . 这应该修复任何 Unsupported major.minor 错误,因为你将拥有最新的JRE和JDK(甚至可能比用于编译Servlet的更新)

    见:http://www.java.com/en/download/manual.jsp(7 Update 25)

    在这里:http://www.oracle.com/technetwork/java/javase/downloads/index.html(Java平台(JDK)7u25)

    分别为最新版本的JRE和JDK .

    编辑:

    很可能你的代码是用Java7编写的,但是可能是使用Java7update4完成的,而你的系统运行的是Java7update3 . 因此它们实际上是相同的主要版本,但次要版本不同 . 只有较小的次要版本向后兼容较低的次要版本 .

    编辑2:如果您的电脑上安装了多个jdk . 您应该检查Apache Tomcat是否正在使用与您编译程序相同的(jre) . 如果在安装apache后安装了新的jdk,通常不会选择新版本 .

相关问题