【java.lang.UnsupportedClassVersionError】版本不一致出错

这种错误的全部报错信息:

 1 java.lang.UnsupportedClassVersionError: org/apache/lucene/store/Directory : Unsupported major.minor version 51.0
 2  at java.lang.ClassLoader.defineClass1(Native Method)
 3  at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
 4  at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
 5  at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
 6  at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
 7  at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
 8  at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
 9  at java.security.AccessController.doPrivileged(Native Method)
10  at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
11  at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
12  at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
13  at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
14 Exception in thread "main" 

  看报错信息,是因为使用的jar包版本不对。这个51.0是什么呢?

  JDK不同的版本,编译出的class文件是不同的。通过查看分析class文件前几个字节,可以找到对应的关系,详细的参考官方,细微的版本之间可能有差异:

1 J2SE 7 = 51 (0x33 hex),
2 J2SE 6.0 = 50 (0x32 hex),
3 J2SE 5.0 = 49 (0x31 hex),
4 JDK 1.4 = 48 (0x30 hex),
5 JDK 1.3 = 47 (0x2F hex),
6 JDK 1.2 = 46 (0x2E hex),
7 JDK 1.1 = 45 (0x2D hex).

  观察一下报错截图:

  原来我的Eclipse的JDK是1.6的,但是jar包明确要求需要1.7的,当然会出错了!

  那么,如何改正呢?下载1.7版本的JDK就不说了。

  右键点击项目工程,Properties

  点击JRE library

  修改JDK版本

  最后编译成功!

时间: 2024-09-27 18:39:28

【java.lang.UnsupportedClassVersionError】版本不一致出错的相关文章

jvm和tomcat 版本不匹配,报java.lang.UnsupportedClassVersionError

项目中报:java.lang.UnsupportedClassVersionError: org/hdht/commonweb/listener/MyServletContextListener 检查java的版本和设置版本是否一样, 检测java的jvm版本与tomcat的版本是否与java的版本一样

编译andriod源码出错:java.lang.UnsupportedClassVersionError: com/google/doclava/Doclava : Unsupported

问题:java.lang.UnsupportedClassVersionError: com/google/doclava/Doclava : Unsupported update-java-alternatives -l查看需要的版本 sudo update-java-alternatives -s  java-1.7.0-openjdk-amd64

java.lang.UnsupportedClassVersionError: Bad version number in .class file (unable to load class org.

1.错误描述 严重: Exception starting filter struts2 java.lang.UnsupportedClassVersionError: Bad version number in .class file (unable to load class org.apache.commons.lang3.StringUtils) at org.apache.catalina.loader.WebappClassLoader.findClassInternal(Webap

Exception in thread "main" java.lang.UnsupportedClassVersionError: com/crack

执行一个jar文件的时候抛异常了 Exception in thread "main" java.lang.UnsupportedClassVersionError: com/crack p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Andale Mono"; color: #29f914; background-color: #000000 } span.s1 { color: #afad24 } sp

【原创】Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/maven/cli/MavenCli : Unsupported major.minor version 51.0

有多个情况造成这种异常,以下列举 1.JDK 和 MAVEN 版本不兼容 从apache 官网下载maven bin 版本,我下的是apache-maven-3.3.3-bin.zip. 下载下来的安装包解压到你的工作目录下.如:E:\开发\apache-maven-3.3.3,配置环境变量,MAVEN_HOME,再把%MAVEN_HOME%\bin配置到 path中. 安装java jdk,配置JAVA_HOME.打开cmd ,输入mvn -r,如果会报错.java.lang.Unsuppor

编译异常 Caused by: java.lang.UnsupportedClassVersionError:

Caused by: java.lang.UnsupportedClassVersionError: com/sumingk/platform/service/impl/ServiceSysPersonImpl : Unsupported major.minor version 51.0 (unable to load class com.sumingk.platform.service.impl.ServiceSysPersonImpl) at org.apache.catalina.load

java.lang.UnsupportedClassVersionError: com/android/build/gradle/AppPlugin : Unsupported major.minor version 52.0解决办法

androidstudio编译程序时出现java.lang.UnsupportedClassVersionError: com/android/build/gradle/AppPlugin : Unsupported major.minor version 52.0.Unsupported major.minor version 52.这个错误是由于(jdk)高版本的java project使用了低版本的来运行.使用命令(java -version 和 javac -version)查看java

java.lang.UnsupportedClassVersionError: Bad version number in .class file

java.lang.UnsupportedClassVersionError: Bad version number in .class file造成这种过错是ni的支撑Tomcat运行的JDK版本与支撑application运行的JDK版本不一致导致的.把它们的JDK版本改成一致步骤如下:1.Window --> Preferences -->Java --> compiler中的compiler compliance level对应的下拉菜单中选择JDK版本.2.Window --&

Maven 3.3.9 mvn -version Error:java.lang.UnsupportedClassVersionError

Description 在下载 Maven包,配置了环境变量之后,在命令行执行 mvn -version(or -v) 报错: 1 Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/ma 2 ven/cli/MavenCli : Unsupported major.minor version 51.0 3 at java.lang.ClassLoader.defineClass1(