[SOLUCIONADO][Gentoo] Como agregar instalacaión manual de JDK a java-config?

Iniciado por RyogiShiki, 10 Febrero 2012, 17:38 PM

0 Miembros y 1 Visitante están viendo este tema.

RyogiShiki

Últimamente he estado aprendiendo la API que va a reemplazar a Swing en las futuras versiones de Java, JavaFX. Cada semana sale una nueva Developer Preview con algunos cambios y correcciones. Por el momento esta solo está soportada por el oracle-jdk y el soporte por parte de OpenJDK se ha planeado para próximos meses. La cuestión es que para un mejor soporte y estabilidad de la API es recomendable usar Java JDK 7 Update 2 (7u2), y me gustaría usar este JDK, así que lo descargo, y lo coloco en /usr/lib/jvm pero luego no logro crear el perfil para que aparezca en java-config o en eselect para poder usar esta versión de manera predeterminada. Alguien sabe entonces como puedo agregar manualmente una instalación del JDK a java-config o eselect?

Gracias de antemano por la ayuda.


RyogiShiki

Bueno mi contesto a mi mismo XD

La manera correcta de hacerlo es la siguiente:

1) Descargamos jdk-7u2-linux-x64.tar.gz desde: http://www.oracle.com/technetwork/java/javase/downloads/jdk-7u2-download-1377129.html

2) Copiamos o movemos jdk-7u2-linux-x64.tar.gz a  /usr/portage/distfiles/:

Código (bash) [Seleccionar]
sudo mv jdk-7u2-linux-x64.tar.gz /usr/portage/distfiles

2) Hacemos emerge sobre la VM correspondiente:

Código (bash) [Seleccionar]
sudo emerge dev-java/oracle-jdk-bin

2.1 [Opcional]) Si se queja de alguna licencia, como por ejemplo:
Código (bash) [Seleccionar]

The following license changes are necessary to proceed:
#required by dev-java/oracle-jdk-bin (argument)
>=dev-java/oracle-jdk-bin-1.7.0.2 Oracle-BCLA-JavaSE

entonces lo que hacemos es (crear si el archivo no existe)/pegar la siguiente linea:
Código (bash) [Seleccionar]
>=dev-java/oracle-jdk-bin-1.7.0.2 Oracle-BCLA-JavaSE
en /etc/portage/package.license
una vez hecho esto repetimos el paso 2 excluyendo 2.1 claro está.

3) Vemos que la instalación se ha llevado con éxito, así que lo siguiente es poner la vm como la máquina de sistema, para esto usamos java-config, lo primero es vel las vm disponibles a usar con el siguiente comando:
Código (bash) [Seleccionar]
java-config --list-available-vms
obteniendo una salida similar a la siguiente:
Código (bash) [Seleccionar]

The following VMs are available for generation-2:
1)      IcedTea JDK 7.2.0 [icedtea-7]
2)      IcedTea-bin 6.1.10.4 [icedtea-bin-6]
3)      Oracle JDK 1.7.0.2 [oracle-jdk-bin-1.7]


En estos momentos nos interesa la tercer opción así que proseguimos a configurarla como la vm del sistema, esto se puede hacer de dos formas con el nombre de la vm o con el número que la representa así:
Con el nombre:
Código (bash) [Seleccionar]
sudo java-config -S oracle-jdk-bin-1.7
Con el número;
Código (bash) [Seleccionar]
sudo java-config -S 3

Y eso es todo, ya tenemos como vm del sistema la perteneciente a la JDK 7u2 y lo podemos comprobar con
Código (bash) [Seleccionar]
java -version

Y listo, espero que a alguien le sirva esta información alguna vez.

Saludos