Gentoo Logo

Gentoo Java Aktualisierungsleitfaden

Inhalt:

1.  Einführung

Hallo und herzlich willkommen. Sie werden sich vermutlich fragen "Warum sollte ich mein Java ugraden wollen?". Vielleicht haben sie diesen Prozess aber auch schon begonnen und wurden wegen einem Fehler während eines Merges auf diese Seite geleitet? Wie auch immer, das Ziel dieses Dokuments ist es Ihnen während des Upgradens auf das neue Java-System zu helfen. Aber was ist eigentlich mit diesem neuen Java-System los?

Das neue Java-System

Für diejenigen, die mit dem neuen Java-System noch nicht vertraut sind, folgt nun eine kurze Liste der neuen Funktionen:

  • Fähigkeit die aktuelle VM fliegend umzuschalten
  • Änderungen an der Benutzer- und System-VM treten direkt in Kraft und sind nicht mehr an die Shell-Umgebung gebunden (d.h. env-update && source /etc/profile nach dem Umschalten der System-VM wird nicht mehr benötigt)
  • Hat nun das Konzept einer "Bau-VM", welche benutzt wird um Pakete zu emergen und unabhängig von der System-VM konfiguriert wird.
  • Für jede Version von Java, d.h. 1.3, 1.4, 1.5, usw., kann die Bau-VM darauf hin konfiguriert werden, welcher Anbieter und welche Version einer VM benutzt wird
  • Die VM zur Emergezeit wird gemäß ihrer Konfiguration fliegend umgeschaltet, genau wie die Abhängigkeit des Pakets. Zum Beispiel lassen sich einige Pakete nicht mit 1.5 kompilieren. In diesem Fall wird eine 1.4-VM zur Bauzeit verwendet.
  • Java-Pakete, welche mit ant gebaut werden, werden ihre build.xml zur Bauzeit neuschreiben, um zu gewährleisten, dass die richtige Version von Java-Bytecode kompiliert wird.
  • Java 1.5 ist unmaskiert, nachdem es einige Zeit in package.mask gewesen ist
  • Java 1.6 wird verfügbar gestellt so bald es veröffentlicht ist.

Fachausdrücke / Konzepte

Da Sie nun einen Einblick haben, auf was Sie sich gefasst machen müssen... Hier sind einige Ausdrücke, die Sie vor dem Beginn wahrscheinlich für brauchbar halten.

Generation
Das ist ein neues Konzept. Die Idee ist, dass eine Generation eine Sammlung von Werkzeugen und Eclasses zum Bauen von Java-Paketen ist. Als erstes beginnen wir von einer existierenden Generation auf eine neue zu migrieren. Während dieser Zeit, koexistieren beide Generationen auf Ihrem System und im Portage-Baum. Als Beispiel, haben Sie eine System VM für Generation X und eine System-VM für Generation X+1 gesetzt. Dadurch können Pakete, die Generation X und Generation X+1 benutzen, während der Migration zur neuen Generation koexistieren.
Generation 1
Diese Generation besteht aus den bestehenden Eclasses (java-pkg, java-utils und java) und java-config-1. Generation 1 ist ein Altlast-System, welches abgeschafft werden wird.
Generation 2
Diese Generation besteht aus den neuen Eclasses (java-pkg-2, java-pkg-opt-2, java-ant-2 und java-utils-2) und der neuen Version von java-config. Dies ist die Generation auf die wir migrieren werden.
Generation 1 System VM
Das ist die VM die dazu verwendet wird, Java-Pakete durch Verwendung von Eclasses aus Generation 1 zu emergen. Sie wird durch Verwendung von java-config-1 --set-system-vm <Wahl der VM> gesetzt.
Generation 2 System VM
Mit Generation 2 wird die System-VM nur für root und für Anwender, die keine Benutzer-VM gesetzt haben, verwendet.
Generation 2 Build VM
Generation 2 führt eine neue Klasse von VM ein. Die Build-VM wird während der Mergezeit zum Bauen von Java-Paketen verwendet. Sie wird falls nötig geändert, abhängig vom Paket. Ein Beispiel: Falls sich ein Paket nur mit 1.4 kompilieren lässt, wird eine 1.4 VM benutzt. Standardwerte werden in /usr/share/java-config-2/config/jdk-defaults.conf definiert. Zusätzlich kann die Build-VM in /etc/java-config-2/build/jdk.conf konfiguriert werden.

2.  java-config updaten

Ein neues Paket, java-config-wrapper, wird durch die alten Versionen von java-config blockiert, daher sollten wir diese zuerst entfernen:

Befehlsauflistung 2.1: Altes java-config entfernen

# emerge -C java-config

Jetzt sollten wir die neue Version von java-config installieren:

Befehlsauflistung 2.2: Neues java-config installieren

# emerge -1 java-config:0 java-config:2

3.  Ihre Umgebung überprüfen

Wir stellen jetzt ein neues Skript zur Verfügung, /usr/bin/java-check-environment. Dieses, wie der Name vielleicht schon sagt, überprüft den Zustand der Java-Umgebung Ihres Systems. Es weist Sie dann darauf hin, welche Aktionen Sie durchführen sollten, um gefundene Probleme zu beheben. Starten Sie jetzt:

Befehlsauflistung 3.1: Überprüfen ihrer Umgebung

# java-check-environment

Falls java-check-environment einen Fehler findet, wird es stoppen und Ihnen mitteilen, was das Problem ist und wie es zu beheben ist. Folgen Sie dem gegebenen Ratschlag und führen Sie java-check-environment erneut aus bis es keine weiteren Probleme mehr findet.

4.  Upgrade... abgeschlossen!

Wenn Sie so weit gekommen sind, haben Sie das Upgrade auf das neue Java-System erfolgreich vollzogen. Herzlichen Glückwunsch!

Jetzt möchten Sie vielleicht einen Blick auf unsere aktualisierte Dokumentation werfen:

5.  Bekannte Probleme und Fragen

Um auf allgemeine Probleme, die mit dem Upgrade zusammenhängen, hinzuweisen, hat das Java-Team hier eine Wikiseite gestartet. Bevor Sie Hilfe suchen oder irgendwo anders Probleme melden, schauen Sie sich diese Seite an.



Drucken

Seite aktualisiert 25. August 2008

Zusammenfassung: Dieser Leitfaden zeigt ihnen wie Sie Java auf die neue Java Generation auf einem Gentoo aktualisieren, einhergehend mit bekannten Konzepten und Werkzeugen.

Joshua Nichols
Author

Karl Trygve Kalleberg
Author

Josh Saddler
Bearbeiter

Stefan Kienzl
Übersetzer

Tobias Heinlein
Übersetzer

Donate to support our development efforts.

Copyright 2001-2014 Gentoo Foundation, Inc. Questions, Comments? Contact us.