В начало → Gentoo и Java → Руководство по обновлению Java в Gentoo |
Ссылка на оригинал: http://www.gentoo.org/proj/en/java/java-upgrade.xml
Перевод: Батогов Е.В a.k.a. JohnBat26
С версии: 1.4.
Дата оригинала: 19.10.2006
Дата перевода: 29.01.2008
Привет и добро пожаловать. Теперь Вы можете спросить: "почему я могу захотеть обновлять Java?". Или, вероятно, вы начали процесс и получили ссылку на эту страницу после ошибки в течение выполнения emerge? Несмотря ни на что, целью этого документа является помощь Вам в процессе обновления на новую Java систему. Но чем же является эта новая Java система.
Для тех, кто не знаком с новой Java системой, здесь приведен список новых возможностей:
Способность переключать текущую VM на лету.
Непосредственно изменять пользовательскую и системную VM, без необходимости трогать окружение шелла (т.е. не надо больше запускать env-update && source /etc/profile после переключения системной VM) .
Теперь появилось понятие "сборочной VM", используемой для установки (через emerge) пакетов, и настраиваемой независимо от системной VM.
Для каждой версии Java, т.е. 1.3, 1.4, 1.5, 1.6 и т.д., сборочная VM может быть настроена и по поставщику и по версии.
Во время выполнения emerge, VM может переключаться на лету в соответствии с её настройками, а также из-за зависимостей пакетов. Например, некоторые пакеты не собираются с версией 1.5. В таких случаях версия 1.4 будет использована во время сборки.
У Java пакетов, которые собираются с ant, во время компиляции будет перезаписан файл build.xml, для гарантии, что правильная версия байт-кода будет получена.
Теперь, когда Вы знаете идею того, что получаете... далее приводится несколько терминов и понятий, которые Вы можете найти полезными перед началом.
Поколение (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.
Новый пакет java-config-wrapper, блокируется старыми версиями java-confg, так что нам следует удалить его сначала:
Теперь нам необходимо установить новую версию java-config:
У нас теперь есть новый скрипт: java-check-environment. Как можно догадаться из его названия, он проверяет правильность Вашего окружения Java. Потом он советует, какие действия Вы можете предпринять для исправления найденных проблем. Таким образом, теперь запустите:
Если java-check-environment обнаружит проблему, остановится и скажет Вам о том как её исправить. Следуйте этим советам, и повторно запускайте java-check-environment, пока он не найдет никаких проблем.
Если Вы дошли до этого места, значит Вы успешно перешли на новую Java систему. Поздравляем !
Теперь, когда Вы обновились, Вы можете захотеть взглянуть на нашу обновленную документацию:
Руководство пользователя (Рус.)
Для решения общих проблем, Java team имеет свою wiki страницу здесь. Перед поиском помощи, или отправкой отчета о проблеме, пожалуйста, ознакомьтесь с этой страницей.
В начало → Gentoo и Java → Руководство по обновлению Java в Gentoo |