Wie ersetze ich OpenJDK 6 durch OpenJDK 7?

Wie ersetze ich OpenJDK 6 durch OpenJDK 7?

Überraschenderweise (da OpenJDK 7 vor etwa 4 Monaten allgemein verfügbar gemacht wurde) verwendet Ubuntu 11.10 standardmäßig immer noch OpenJDK 6 statt 7. Wie behebe ich das am besten? Ich würde OpenJDK 6 lieber vollständig entfernen und OpenJDK 7 als Standard-JDK und Standard-JRE belassen.

Ich möchte nicht die offiziellen Oracle-Tarballs, sondern Deb-Repos – die Standardmethode von Ubuntu.

Antwort1

Das Problem besteht darin, dass das default-jrePaket von OpenJDK 6 abhängt und die Abhängigkeiten der meisten anderen Pakete wie folgt definiert sind. default-jre | openjdk-6-jre | sun-java6-jreBis OpenJDK 7 offiziell unterstützt und als Standardversion verwendet wird oder bis alle Java-abhängigen Pakete ihre Abhängigkeiten aktualisieren, müssen Sie OpenJDK 6 beibehalten und OpenJDK 7 mit als Standard festlegen update-java-alternatives. Beispiel für ein 64-Bit-System:

$ update-java-alternatives -l
java-1.6.0-openjdk 1061 /usr/lib/jvm/java-1.6.0-openjdk
java-1.7.0-openjdk-amd64 1051 /usr/lib/jvm/java-1.7.0-openjdk-amd64
$ sudo update-java-alternatives -s java-1.7.0-openjdk-amd64

Auf 32-Bit-Systemen ist der Verzeichnisname anders. Sie können den richtigen Namen mithilfe des -lSchalters finden. Der zweite Befehl kann viele Fehler erzeugen. Verwenden Sie entweder --jreden Schalter oder ignorieren Sie die Fehler einfach – das Skript ändert, was es kann, und ignoriert den Rest.

Theoretisch könnte man das Paket so bearbeiten, default-jredass es von OpenJDK 7 abhängig ist, aber seien Sie gewarnt, dass dies mehr Schaden als Nutzen anrichten kann.

Antwort2

Hierzu müssen beide JDK-Versionen auf Ihrem System installiert sein. Sie können apt-get verwenden, um beide herunterzuladen.

Versuchen Sie danach,

$ sudo update-alternatives --config java

und wählen Sie das JDK aus, das Sie verwenden möchten.

Für manche Anwendungen ist Openjdk manchmal ungünstig.

Sie sollten es auch mit Oracle-Java oder Sun-Java versuchen.

Der folgende Link ist hierfür sehr nützlich:

http://www.webupd8.org/2012/01/install-oracle-java-jdk-7-in-ubuntu-via.html

Antwort3

OpenJDK 7 befindet sich in den normalen Ubuntu-Repos in 11.10. Wenn Sie nach openjdk-7-jre und openjdk-7-jdk suchen und diese mit apt-get/synaptic/software centre installieren, sollten diese openjdk-6 ersetzen. Wenn dies nicht der Fall ist, können Sie zuerst die openjdk-6-*-Pakete entfernen, indem Sieapt-get purge openjdk-6-*

Antwort4

Das Repo finden Sie hier: https://launchpad.net/~openjdk/+archive/ppa

oder:

sudo apt-add-repository ppa:openjdk/ppa
sudo apt-get update
sudo apt-get upgrade

vorausgesetzt, Sie haben OpenJDK installiert

verwandte Informationen