今天运行项目,切换一下eclipse,运行程序突然发现普通的类main()方法无法运行,报错详细信息如下:
Exception in thread "main" java.lang.UnsupportedClassVersionError: com/daling/bpmn/A : Unsupported major.minor version 52.0
Exception in thread "main" java.lang.UnsupportedClassVersionError: com/daling/bpmn/A : Unsupported major.minor version 52.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:476)
项目在之前的eclipse运行是正常的,怎么切换下空间就不可以了,查看了一下信息,结果发现是高版本的jdk用的低版本的jdk导致的。之前用的jdk8,新的 eclipse空间用的是jdk7,所以就导致这个问题。具体的解决办法如下:
第一步查看jdk的版本是否正确。如下图所示查看。
第二步查看eclipse中编译版本是否正确,如下图所示:
大功告成了。
二句话总结这个问题 :
1、查看使用的jdk版本。
2、查看编译的最低jdk版本要求。