Unsupported major.kleinere 52.0 exception in Java
Gegeben, eine solche Ausnahme:
java.lang.UnsupportedClassVersionError: com/sun/tools/javac/Main : Unsupported major.minor version 52.0
Und ich weiß, liegt das daran, dass das JDK und JRE sind nicht kompatibel. Wenn ich jedoch geben:
which java
Ausgabe:
/usr/java/jdk1.6.0_24/bin/java
Und, wenn die Eingabe in:
which javac
Ausgabe:
/usr/java/jdk1.6.0_24/bin/javac
Es ist das kompatible version. Was ist also das problem?
- Und wie starten Sie das Programm, das die Ausnahme ausgelöst ?
- Beim ausführen ein 'ant' - Skript, enthält es einige Aufgaben zu java. Ich denke, der Pfad von javac ist falsch. Wissen Sie, wie Sie den Weg von javac?
- Ant ist mit
JAVA_HOME
Umfeld var. - können Sie fügen Sie den Inhalt von java/javac-task in ant-Datei oder Suche nach java und fügen Sie alle, der passt.
- Version 52 = Java 8. Sie werden nicht in der Lage zum ausführen von Java-8-software mit Java 6
- könnten Sie überschreiben Ihre java-compiler-Pfad mit dem executable-Attribut im javac-tag.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Das problem ist in der Regel verursacht durch diese Sequenz:
Code kompiliert wird mit dem neuen JDK, und "target" aktuelle Java-version.
Versuchen, den code auszuführen, der mit einem älteren JDK oder JRE.
In diesem Fall, kleine Ausführung 52 bedeutet, dass etwas kompiliert wurde mit Java 8 JDK, und mit Java 8 als Ziel-Plattform, und, dass Sie versuchen, führen Sie es auf einem älteren JRE /JDK.
Könnten Sie auch bekommen haben und die JAR-Datei von woanders kompiliert wurde für Java 8.
Um Ihr problem zu lösen, müssen Sie herausfinden:
die class-Datei bzw. die Dateien haben die Versionsnummer problem (mit der Ausnahme von Nachricht sagen, Sie sollten die erste ...),
wobei die class-Datei stammt (aus einer JAR-Datei? aus dem file-system?), und dann
kommen, wie es kompiliert wurde mit Java 8, obwohl Sie dachte Sie waren das kompilieren mit Java 6.
Es ist eine unbestreitbare Tatsache, dass die Klasse nicht geladen war kompiliert mit Java 8 (oder höher) - compiler. Sie müssen herausfinden, warum, und dann entweder kompilieren Sie es mit dem älteren JDK, oder es mit Java 8.
es sagt, version 52.0 so sollten Sie die Installation von java 8.
Überprüfen Sie, ob tools.jar während der Zusammenstellung entspricht, die mit der JRE gesetzt. Wenn Sie auf eclipse, überprüfen Sie die Versionen:
Goto-Fenster->Einstellungen
Überprüfen Ant Laufzeit durch Auswahl der Laufzeit unter Ameise in den linken Bereich. Überprüfen Sie die Globalen Einträge unter classpath tab. Sie sehen die version im Ordner Pfad.
Auf der linken Seite prüfen der installierten JREs in Java. Überprüfen Sie die version.