В началоGentoo и Java → Руководство по обновлению Java в Gentoo
Gentoo-doc HOME Пред.: Gentoo и JavaВ началоУровень выше: Gentoo и Java

2. Руководство по обновлению Java в Gentoo

Ссылка на оригинал: http://www.gentoo.org/proj/en/java/java-upgrade.xml

Перевод: Батогов Е.В a.k.a. JohnBat26

С версии: 1.4.

Дата оригинала:  19.10.2006

Дата перевода: 29.01.2008

2.1. 1. Введение

Привет и добро пожаловать. Теперь Вы можете спросить: "почему я могу захотеть обновлять  Java?". Или, вероятно, вы начали процесс и получили ссылку на эту страницу после ошибки в течение выполнения emerge?  Несмотря ни на что, целью этого документа является помощь Вам в процессе обновления на новую Java систему. Но чем же является эта новая Java система.

2.1.1. Новая Java система

Для тех, кто не знаком с новой Java системой, здесь приведен список новых возможностей:

  1. Способность переключать текущую VM на лету.

  2. Непосредственно изменять пользовательскую и системную VM, без необходимости трогать окружение шелла (т.е. не надо больше запускать env-update && source /etc/profile после переключения системной VM) .

  3. Теперь появилось понятие "сборочной VM", используемой для установки (через emerge) пакетов, и настраиваемой независимо от системной VM.

  4. Для каждой версии Java, т.е. 1.3, 1.4, 1.5, 1.6 и т.д., сборочная VM может быть настроена  и по поставщику и по версии.

  5. Во время выполнения emerge, VM может переключаться на лету в соответствии с её настройками, а также из-за зависимостей пакетов. Например, некоторые пакеты не собираются с версией 1.5. В таких случаях  версия 1.4 будет использована во время сборки.

  6. У Java пакетов, которые собираются с ant, во время компиляции будет перезаписан файл build.xml, для гарантии, что правильная версия байт-кода будет получена.

2.1.2. Терминология/ основные понятия

Теперь, когда Вы знаете идею того, что получаете... далее приводится несколько терминов и понятий, которые Вы можете найти полезными перед началом.

Поколение (Generation)

Это новое понятие. Смысл состоит в том, что поколение это множество средств и eclasses для сборки Java пакетов. В некоторое время мы начнем переходить с существующего поколения на новое. В течение этого времени, оба поколения существуют вместе в Вашей системе и в дереве портежей. Так например, Вы можете иметь системную VM для поколения 1 и системную VM для поколения 2. Для достижения этого, пакеты которые используют поколение 1 и поколение 2 могут сосуществовать, пока происходит миграция на новое поколение.

Поколение 1 (Generation 1)

Это поколение состоит из существующих eclasses (java-pkg, java-utils, и java) и java-config-1. Поколение 1 это устаревшая, постепенно уходящая, система.

Поколение 2 (Generation 2)

Это поколение состоит из новых eclasses (java-pkg-2, java-pkg-opt-2, java-ant-2, и java-utils-2) и новой версии java-config. Это поколение, куда мы постепенно мигрируем.

Поколение 1 Системная VM

Эта VM используется для установки Java пакетов, используя eclasses из Поколения 1. Она устанавливается следующим образом:

java-config-1 --set-system-vm <choice of vm>. 

Поколение 2 Системная VM

C Поколением 1, системная VM используется только для  root и для пользователей, которые не имеют установленной пользовательской VM

Поколение 2 Сборочная VM

Поколение 2 вводит новый класс VM. Сборочная VM используется во время установки для сборки Java пакетов. Она изменяется, как того требует зависимости от пакетов. Например, если пакет собирается только с версией 1.4, то VM версии 1.4 и будет использоваться. Умолчания определены в файле: /usr/share/java-config-2/config/jdk-defaults.conf. Дополнительно сборочная VM может быть настроена в файле:/etc/java-config-2/build/jdk.conf.

2.2. 2.  Обновление java-config

Новый пакет java-config-wrapper, блокируется старыми версиями java-confg, так что нам следует удалить его сначала:

Листинг 18. Удаление старого java-config

# emerge -C java-config


Теперь нам необходимо установить новую версию java-config:

Листинг 19. Установка нового java-config

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


2.3. 3. Проверка вашего окружения

У нас теперь есть новый скрипт: java-check-environment. Как можно догадаться из его названия, он проверяет правильность Вашего окружения Java. Потом он советует, какие действия Вы можете предпринять для исправления найденных проблем. Таким образом, теперь запустите:

Листинг 20. Проверка Вашего окружения

# java-check-environment


Если java-check-environment обнаружит проблему, остановится и скажет Вам о том как её исправить. Следуйте этим советам, и повторно запускайте java-check-environment,  пока он не найдет никаких проблем.

2.4. 4. Обновление ... завершено!

Если Вы дошли до этого места, значит Вы успешно перешли на новую Java систему. Поздравляем !

Теперь, когда Вы обновились, Вы можете захотеть взглянуть на нашу обновленную документацию:

  1. Руководство пользователя (Рус.)

  2. Руководство разработчика (Англ.)

2.5. 5. Общие проблемы и вопросы

Для решения общих проблем, Java team имеет свою wiki страницу здесь. Перед поиском помощи, или отправкой отчета о проблеме, пожалуйста, ознакомьтесь с этой страницей.

Пред.: Gentoo и JavaВ началоУровень выше: Gentoo и Java
В началоGentoo и Java → Руководство по обновлению Java в Gentoo