
Ich habe Java 1.7 installiert und versuche, Java 1.6 zu installieren.
Ich habe java_home und die Pfadvariable aktualisiert, die auf den neuen Speicherort verweist, und außerdem diese Befehle ausgeführt.
sudo update-alternatives --set java /usr/local/java/jdk1.6.0_45/bin/java
sudo update-alternatives --set javac /usr/local/java/jdk1.6.0_45/bin/javac
Meine Java-Version zeigt mir Java 1.6, aber wenn ich Java class_name ausführe, erhalte ich den folgenden Fehler
Exception in thread "main" java.lang.UnsupportedClassVersionError: three : Unsupported major.minor version 51.0
Wenn ich den Befehl sudo update-alternatives --config java ausführe
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 auto mode
1 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 manual mode
2 /usr/local/java/jdk1.6.0_45/ 1 manual mode
* 3 /usr/local/java/jdk1.6.0_45/bin/java 1 manual mode
4 /usr/local/java/jre1.7.0_40/bin/java 1 manual mode
Kann mir jemand sagen, was ich übersehe?
Antwort1
Sie benötigen Java 7, um Klassendateien mit Version 51.0 auszuführen, daher müssen Sie die Klasse entweder neu kompilieren oder auf Java 7 aktualisieren.
Java hat viele Links in /etc/alternatives, aber es gibt ein Tool namens update-java-alternatives
im Paket java-common, das die Verwaltung aller Links erleichtert. Auf diese Weise verwenden Sie nicht eine Version von javac und eine andere von Java.