Guía Gentoo de actualización de Java
1.
Introducción
Hola y bienvenidos. Puede que se esté preguntado '¿Por qué quisiera
actualizar mi Java?' O quizás ¿comenzó el proceso de actualización y
fue redirigido a esta página por un error durante el proceso?. Sin
importar cuál sea el caso, el propósito de este documento es ayudarle
durante la actualización al nuevo sistema Java. ¡Ah!, pero ¿qué es
esto del nuevo sistema Java?
El nuevo sistema Java
Para aquellos que no están familiarizados con el nuevo sistema Java,
he aquí una lista de nuevas características:
- Habilidad de cambiar la VM actual sobre la marcha
- Los cambios al usuario y sistema VM se hacen efectivos de
inmediato y no están atados al ambiente de la consola. (ej. no mas
env-update && source /etc/profile luego de cambiar la
VM)
- Se introduce el concepto 'VM de compilación' que es utilizada
para hacer emerge de paquetes, y es independiente de la VM del
sistema.
- Para cada versión de Java, ej. 1.3, 1.4, 1.5, etc. la 'VM de
compilación' puede ser configurada para especificar que fabricante y
versión de VM se utilizará.
- La VM al momento de ejecutar emerge será cambiada de acuerdo
tanto a su configuración como a las dependencias del paquete. Por
ejemplo, algunos paquetes no compilarán con 1.5. En estos casos una
VM 1.4 será utilizada al construir el paquete.
- Los paquetes Java que se compilan utilizando ant reescribirán su
build.xml al momento de ser construidos para asegurar que la versión
correcta del bytecode de Java sea compilado.
- Java 1.5 ahora está desenmascarado luego de haber estado en
package.unmask por algún tiempo.
- Java 1.6 estará disponible al momento en que sea liberado.
Terminología / Conceptos
Ahora que tiene una idea de en qué se está metiendo ... aquí hay algunos
términos y conceptos que pueden resultar útiles antes de comenzar.
- Generación
-
Es un nuevo concepto. Una generación es un conjunto de
herramientas y eclasses para construir paquetes Java. Cuando
comience la migración la generación existente hacia una nueva,
ambas generaciones coexistirán en su sistema y en el árbol de
portage. Por ejemplo, tendrá una VM para la Generación 1 y
una VM para la Generación 2. Al hacer esto, los paquetes que
utilicen ambas generaciones, Generación 1 y Generación 2, podrán
coexistir mientras se migra a la nueva generación.
- Generación 1
-
La Generación 1 consiste en eclasses existentes (java-pkg,
java-utils y java) y java-config-1. La Generación 1 es un
sistema legacy que está siendo eliminado.
- Generación 2
-
La Generación 2 consiste en nuevas eclasses (java-pkg-2,
java-pkg-opt-2, java-ant-2 y java-utils-2) y en la nueva versión
de java-config. Esta es la Generación a la que se quiere
migrar.
- VM de Sistema para la Generación 1
-
Esta es la VM que se utilizará para hacer emerge de paquetes Java
utilizando las eclasses de la Generación 1. Se puede configurar
utilizando el comando java-config-1 --set-system-vm <versión
de VM>
- VM de Sistema para la Generación 2
-
La VM de sistema para la Generación 2 sólo es utilizada por root y
por aquellos usuarios que no han configurado una VM.
- VM de compilación para la Generación 2
-
La Generación 2 introduce una nueva clase de VM. La VM de
compilación es utilizada al momento de construir e instalar
paquetes Java. Esta VM puede cambiar de acuerdo al paquete que
esta siendo instalado. Por ejemplo, si un paquete compila sólo
utilizando la versión 1.4, una VM 1.4 será utilizada. La
configuración por defecto se puede establecer en
/usr/share/java-config-2/config/jdk-defaults.conf.
Adicionalmente se puede configurar la VM de compilación en
/etc/java-config-2/build/jdk.conf.
2.
Actualizando java-config
Un nuevo paquete java-config-wrapper es bloqueado por una
versión anterior de java-config, así que primero debería ser
eliminado:
Listado de Código 2.1: Eliminar versión anterior de java-config |
# emerge -C java-config
|
Ahora la nueva versión de java-config puede ser instalada:
Listado de Código 2.2: Instalando el nuevo java-config |
# emerge -1 "=java-config:0" "=java-config:2"
|
3.
Revisando el entorno
Ahora proporcionamos un nuevo guión, java-check-environment y
como su nombre indica revisa la salud del entorno Java en su sistema. Al
ejecutarse, sugiere las acciones que deben ser empleadas para solucionar
cualquier problema que pudiese surgir. Ahora ejecute:
Listado de Código 3.1: Revisando el entorno |
# java-check-environment
|
Si java-check-environment encuentra un problema se detendrá y
le informará sobre el error y cómo solucionarlo. Siga las sugerencias
dadas y vuelva a ejecutar java-check-environment hasta que no encuentre
problemas adicionales.
4.
Actualización ... completa!
Si ha llegado a este punto, entonces ha actualizado satisfactoriamente
al nuevo sistema Java. ¡Felicitaciones!
Ahora que ha actualizado, quizás quiera nuestra documentación
actualizada en:
5.
Problemas y Preguntas Comunes
Para algunos problemas comunes en la actualización, el equipo de Java
ha creado una página wiki aquí.
Antes de buscar ayuda o reportar problemas en otro lugar, por favor visite
esta página.
El contenido de este documento, a no ser que se especifique
expresamente, está registrado bajo los términos de la licencia
CC-BY-SA-2.5. Se aplican las
Pautas de
Utilización del logotipo y nombre de Gentoo.
|