Gentoo Logo

Aktualizacja systemu maszyn wirtualnych Java w Gentoo

Spis treści:

1.  Zanim zaczniesz

Witamy. Zapewne zadajesz sobie teraz pytanie 'Po co mam aktualizować Javę?'. Lub właśnie przechodziłeś przez ten proces i zostałeś skierowany na tę stronę przez błąd instalacji? Bez względu na to, powodem, dla którego stworzono ten dokument jest pomoc przy aktualizacji Javy do nowego systemu. No tak, ale o co chodzi z tym nowym systeme Java?

Nowy system java

Dla tych, którzy nie znają jeszcze nowego systemu Javy, poniżej znajduje się lista nowych opcji:

  • Możliwość przełączania się do nowej maszyny wirtualnej w locie.
  • Zmiany jakie wprowadzi użytkownik widoczne są natychmiast i nie są przechowywane w powłoce systemowej (tzn. nie trzeba więcej uruchamiać polecenia env-update && source /etc/profile po przełączeniu maszyny wirtualnej).
  • Koncepcja "budującej maszyny wirtualnej" używanej do instalacji pakietów oraz konfigurowalnej niezależnie od systemowej maszyny wirtualnej.
  • Dla każdej wersji Javy, 1.3, 1.4, 1.5 itd., budująca maszyna wirtualna może zostać skonfigurowana do odpowiedniej wersji i producenta maszyny wirtualnej.
  • Maszyna wirtualna oraz jej pakiety zależne zostaną przełączone podczas instalacji zgodnie z jej konfiguracją. Dla przykładu, niektóre pakiety nie kompilują się z wersją 1.5. W takich przypadkach, do budowy zostanie użyta wersja 1.4.
  • Pakietom Java, które budują się z ant, zostaną przepisane pliki build.xml podczas kompilacji, aby mieć pewność, że zostanie skompilowany poprawny kod bitowy java.
  • Wersja 1.5 Javy została odmaskowana
  • Wersja 1.6 będzie dostępna dla użytkowników systemu, krótko po jej wydaniu.

Terminologia / Koncepcje

Gdy już wiemy z czym mamy do czynienia, poniżej znajdziemy kilka terminów oraz koncepcji, które mogą nam się przydać w późniejszym czasie.

Generacja
Nowa koncepcja. Generacja to zestaw programów i eklas wykorzystywanych do tworzenia pakietów w języku Java. W pewnym momencie zamierzamy przejść z obecnej generacji do nowszej. W międzyczasie obie generacje mogą współistnieć. Na przykład, można mieć zainstalowaną systemową maszynę wirtualną generacji 1 jednocześnie z maszyną wirtualną generacji 2. W ten sposób pakiety korzystające z generacji 1 i generacji 2 mogą występować razem podczas przejścia na nowszą generację.
Pierwsza generacja
Składa się z obecnych wersji eklas (java-pkg, java-utils, and java) oraz programu java-config-1.x. Pakiety generacji 1 uznane są za przestarzałe i powoli rezygnuje się z ich użycia.
Druga generacja
Nowa wersja zawierająca nowe eklasy (java-pkg-2, java-pkg-opt-2, java-ant-2, and java-utils-2) oraz nową wersję programu java-config. jest to generacja, na którą będziemy migrować.
Systemowa maszyna wirtualna pierwszej generacji
Ta maszyna wirtualna służy do instalacji pakietów w języku Java korzystających z eklas pierwszej generacji. Wybiera się ją za pomocą polecenia java-config-1 --set-system-vm <wybrana maszyna>.
Systemowa maszyna wirtualna drugiej generacji
Maszyna wirtualna, z której korzystają tylko root i użytkownicy, którzy nie wybrali własnej maszyny wirtualnej.
Instalacyjna maszyna wirtualna drugiej generacji
W drugiej generacji wprowadzono nowy rodzaj maszyny wirtualnej. Służy ona do budowania pakietów korzystających z Javy. Standardowo pakiety będą próbowały korzystać z maszyny wirtualnej o najniższym numerze wersji. To, którego dostawcy maszyna wirtualna będzie zastosowana, zależy od architektury. Wartości domyślne są ustawione w pliku /usr/share/java-config-2/config/jdk-defaults.conf. Dodatkowo, instalacyjną maszynę wirtualną można wybrać w pliku /etc/java-config-2/build/jdk.conf.

2.  Aktualizacja java-config

Nowy pakiet, java-config-wrapper, jest blokowany przez starsze wersje java-config, należy więc je usunąć:

Listing 2.1: Usuwanie starej wersji java-config

# emerge -C java-config

Teraz trzeba zainstalować nowy java-config:

Listing 2.2: Instalacja nowego java-config

# emerge -1 "=java-config-1*" "=java-config-2*"

3.  Sprawdzenie środowiska Java

Dostarczamy nowy skrypt java-check-environment, służący do sprawdzenia środowiska Java. Przekazuje on informacje na temat kroków, które należy podjąć, aby zlikwidować znalezione problemy. Zatem należy uruchomić:

Listing 3.1: Sprawdzanie środowiska

# java-check-environment

Jeżeli skrypt ten napotka na jakieś problemy, zatrzyma swoje działanie i poinformuje nas o problemie oraz o sposobie jego rozwiązania. Należy zastosować się do podanych wskazówek a następnie ponownie uruchomić java-check-environment dopóki skrypt nie zakończy poprawnie działania.

4.  Aktualizacja... ukończono!

Jeżeli dotarłeś do tego momentu, aktualizacja systemu Java zakończyła się sukcesem. Gratulacje!

Po przeprowadzeniu aktualizacji, być może będziemy chcieli zajrzeć do zaaktualizowanej dokumentacji.

5.  Częste problemy i pytania

Aby ułatwić poszukiwania rozwiązań na problemy spotykane przy aktualizacji zespół Java stworzył stronę wiki. Przed szukaniem pomocy lub zgłaszaniem problemów prosimy o przeczytaniej tego dokumentu.



Drukuj

Zaktualizowano 19 października 2006

Podsumowanie: Ten przewodnik przedstawia sposób aktualizacji wsparcia dla języka programowania Java w Gentoo do nowej generacji, jak również związane z tym pojęcia i narzędzia.

Joshua Nichols
Autor

Karl Trygve Kalleberg
Autor

Josh Saddler
Redaktor

Radosław Szkodziński
Tłumacz

Donate to support our development efforts.

Support OSL

Support OSL

Gentoo Centric Hosting: vr.org

VR Hosted

Tek Alchemy

Tek Alchemy

SevenL.net

SevenL.net

Global Netoptex Inc.

Global Netoptex Inc.

Linux World Expo

Linux World Expo

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