Error message:
Exception in thread “main” java.lang.UnsupportedClassVersionError: com/shizongger/sort/SelectorSort : Unsupported major.minor version 52.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access100 ( URLCla s s Lo a de r.java:71)atjava.net. URLCla s s Lo a de r 1.run(URLClassLoader.java:361)
at java.net.URLClassLoader1.ra n ( URLCla s s Lo a de r.java:355)atjava.securitand.AccessController.doPrivileged(NativeMethod)atjava.net.URLClassLoader.findClass(URLClassLoader.java:354)atjava.lang.ClassLoader.loadClass(ClassLoader.java:425)atsun.misc.Launcher AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)
Generally, it is caused by the high version compiling and running the low version. The first step is to check whether the compiled version of Java is consistent with the running version:
shizongger@shizongger:~$ javac -version
javac 1.7.0_79
java version "1.7.0_79"
Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)
The compiled and run versions are the same, let's see if it is the Eclipse compiled version. Right-click the project->Properties->Java Compalier->Jdk Compliance, set the Jdk version to 1.7, and click OK->Apply.
Problem solved since this.