Update-Alternativen: Problem "Alternativer Pfad existiert nicht" beim Aktualisieren von JDK7

10

Ich habe beschlossen, mein JDK7 von hier aus auf die neueste Version zu aktualisieren .

Das entsprechende x64 tag.gz-Archiv für meine Architektur wurde heruntergeladen und /usr/lib/jvmwie gewohnt extrahiert . Alle früheren Versionen von Java wurden auf die gleiche Weise installiert. Aber bevor Sie neue Alternativen für java, javacund javawsich entfernt alle vorhandenen Alternativen mit den folgenden Befehlen:

sudo update-alternatives --remove-all java
sudo update-alternatives --remove-all javac
sudo update-alternatives --remove-all javaws

Wenn ich jetzt versuche, neue Alternativen zu installieren, erhalte ich Folgendes:

sudo update-alternatives --install /usr/lib/jvm/jdk1.7.0_13/bin/java java /usr/bin/java 1
update-alternatives: error: alternative path /usr/bin/java doesn't exist.

Natürlich /usr/bin/javaexistiert es nicht, aber existiert /usr/bines? Was ist daran falsch und wie kann ich es beheben?

ezze
quelle
1
Es gibt ein webupd8-Java-ppa zum Aktualisieren des Oracle JDK7.
BuZZ-dEE

Antworten:

8

Es ist meine epische Schuld! :) :)

Ich habe die Argumente von verwechselt update-alternatives. Die richtige Befehlszeile muss lauten:

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk/bin/java 1
ezze
quelle
Ich habe es als Antwort gepostet, weil es die Frage gelöst hat. Ich weiß nicht genau, ob ich die Frage löschen soll (da sie in kurzer Zeit von mir selbst gelöst wurde) oder die Antwort posten soll.
Ezze
Die Antwort zu posten ist im Allgemeinen das Richtige. Obwohl dieses Problem so lokalisiert ist, bin ich mir nicht sicher, ob es irgendjemand in Zukunft nützlich finden wird. Wer weiß, ich könnte mich irren. :)
Nathan JB
Auf jeden Fall empfehle ich bei der nächsten Installation / Aktualisierung von Java die Verwendung von webup8 java ppa (anderer Link). Dies macht alles so viel einfacher (stellen Sie nur sicher, dass Sie zuerst Ihre aktuelle Installation löschen ).
Nathan JB
2

Da Sie von einer früheren Java-Version aktualisieren, die Sie manuell entfernt haben, müssten Sie den folgenden Befehl zweimal ausführen. Beim ersten Mal wird eine Fehlermeldung angezeigt, die beim zweiten Ausführen funktioniert.

sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk/bin/java" 1

Quelle: Easy Linux Project

Aditya
quelle
Vielen Dank für die Antwort, aber das Problem ist, dass ich die Argumente von update-alternatives verwechselt habe. Der richtige Befehl funktioniert beim ersten Versuch.
Ezze