Ok, also ich verstehe locker, dass 52.0 ist Java 8, und dass die Ausnahmen bedeutet, dass einige Code mit einer Version von Java und einige mit einem anderen kompiliert wird. Was ich nicht verstehen kann, ist, um welchen Weg es sich handelt.Was bedeutet "Nicht unterstützte Major.minor Version 52.0" und wie behebe ich es?
Hier ist der Stack-Trace, die ich bekomme:
Exception in thread "main" java.lang.UnsupportedClassVersionError: org/openrdf/model/ValueFactory : 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.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:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2615)
at java.lang.Class.getMethod0(Class.java:2856)
at java.lang.Class.getMethod(Class.java:1668)
at sun.launcher.LauncherHelper.getMainMethod(LauncherHelper.java:494)
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:486)
ich meinen Code von Eclipse ausführen und es stürzt ab, bevor Haupt erreichen. Ich habe ein paar Posts hier gelesen, in denen ich gesagt habe, dass ich mein Compliance-Niveau/meine JRE ändern soll, aber ich kann es anscheinend nicht beheben lassen.
Ist der Fehler, dass die Klasse 'ValueFactory' mit Java 8 kompiliert wurde, oder dass mein Code hat? Ich habe versucht, mein Compliance-Level auf 1,6, 1,7 und 1,8 zu ändern, aber keiner von beiden hat das Problem behoben.
Mehr oder weniger. Nur um für jemand anderen zu klären. Ich habe JDK 1.7.0_79 ausgeführt. Ich habe jdk 1.8.0_81 hinzugefügt und in Fenster -> Einstellungen -> Java -> Installierte JREs ausgewählt. Das Problem lag im Build-Pfad für das betreffende Projekt, unter 'Order and Export' war JavaSE-1.7 'in der Liste höher als' jdk1.8.0_91 '. Ich denke, das bedeutet, dass die 1.7 Systembibliotheken importiert wurden und über 1.8 bevorzugt wurden. – Andy
@Andy froh zu wissen, dass es jetzt für dich funktioniert. – Mena