java.lang.UnsupportedClassVersionError:JDK版本不一致出错

尝试运行spring boot程序时出现如下错误:

java.lang.UnsupportedClassVersionError: org/apache/lucene/store/Directory : 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)
 at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
 at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
 at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
 at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
Exception in thread "main"


导致错误的原因是使用高版本的JDK编译的Java class文件试图在较低版本的JVM上运行。

本地JDK版本为1.8,而项目中JDK版本为1.6.由于使用spring boot内置tomcat,其对应也为1.6版本JDK。从而报以上错误


解决方法:

maven项目可以在pom.xml文件中修改JDK版本:


非maven项目需要手动添加对应版本JDK,方法见http://www.cnblogs.com/xing901022/p/4172410.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章