[U-co] JDK ubuntu 12.04

Wilmar Giraldo wilmar.giraldo en gmail.com
Sab Jun 16 17:48:56 UTC 2012


Con lo que te han respondido te sirve para poner a funcionar el glassfish,
sin embargo me permito complementar algo.

Oracle no proporciona un instalador oficial para sistemas basados en
Debian, sin embargo brinda un archivo comprimido con todo lo necesario para
poner a funcionar Java en cualquier sistema Linux.

Creo que redistribuir el Java a través de canales no oficiales, ya sea el
JRE o el JDK es ilegal, por lo que desde hace un tiempo he hecho la labor
de configurar el entorno Java a mano sin usar repositorios y aunque el
proceso es algo tedioso, me funciona perfecto.

Para instalarlo en Ubuntu, necesito previamente tener instalado el
Galternatives, yo lo uso por comodidad, aunque no es estrictamente
necesario si te gusta usar la consola.

Descargo el JDK o JRE específico de la arquitectura de mi maquina /
instalación según sea necesario.

Actualizo las siguientes alternativas

Para el JRE:

# Instalando las alternativas para el JRE:
#sudo update-alternatives --install "/usr/bin/java" "java"
$JRE_PATH/bin/java $PRIORITY
#sudo update-alternatives --install "/usr/bin/javaws" "javaws"
$JRE_PATH/bin/javaws $PRIORITY
#sudo update-alternatives --install "/usr/bin/jexec" "jexec"
$JRE_PATH/lib/jexec $PRIORITY
#sudo update-alternatives --install "/usr/bin/keytool" "keytool"
$JRE_PATH/bin/keytool $PRIORITY
##sudo update-alternatives --install "/usr/bin/mozilla-javaplugin.so"
"/jre/lib/amd64/libjavaplugin_jni.so"
#sudo update-alternatives --install "/usr/bin/orbd" "orbd"
$JRE_PATH/bin/orbd $PRIORITY
#sudo update-alternatives --install "/usr/bin/pack200" "pack200"
$JRE_PATH/bin/pack200 $PRIORITY
#sudo update-alternatives --install "/usr/bin/policytool" "policytool"
$JRE_PATH/bin/policytool $PRIORITY
#sudo update-alternatives --install "/usr/bin/rmid" "rmid"
$JRE_PATH/bin/rmid $PRIORITY
#sudo update-alternatives --install "/usr/bin/rmiregistry" "rmiregistry"
$JRE_PATH/bin/rmiregistry $PRIORITY
#sudo update-alternatives --install "/usr/bin/servertool" "servertool"
$JRE_PATH/bin/servertool $PRIORITY
#sudo update-alternatives --install "/usr/bin/tnameserv" "tnameserv"
$JRE_PATH/bin/tnameserv $PRIORITY
#sudo update-alternatives --install "/usr/bin/unpack200" "unpack200"
$JRE_PATH/bin/unpack200 $PRIORITY

Para JDK además configuro las siguientes alternativas:
# Instalando alternativas para el JDK:
#sudo update-alternatives --install "/usr/bin/appletviewer" "appletviewer"
$JDK_PATH/bin/appletviewer $PRIORITY
#sudo update-alternatives --install "/usr/bin/apt" "apt" $JDK_PATH/bin/apt
$PRIORITY
#sudo update-alternatives --install "/usr/bin/extcheck""extcheck"
$JDK_PATH/bin/extcheck $PRIORITY
#sudo update-alternatives --install "/usr/bin/idjl" "idjl"
$JDK_PATH/bin/idjl $PRIORITY
#sudo update-alternatives --install "/usr/bin/jar" "jar" $JDK_PATH/bin/jar
$PRIORITY
#sudo update-alternatives --install "/usr/bin/jarsigner" "jarsigner"
$JDK_PATH/bin/jarsigner $PRIORITY
#sudo update-alternatives --install "/usr/bin/javac" "javac"
$JDK_PATH/bin/javac $PRIORITY
#sudo update-alternatives --install "/usr/bin/javadoc" "javadoc"
$JDK_PATH/bin/javadoc $PRIORITY
#sudo update-alternatives --install "/usr/bin/javah" "javah"
$JDK_PATH/bin/javah $PRIORITY
#sudo update-alternatives --install "/usr/bin/javap" "javap"
$JDK_PATH/bin/javap $PRIORITY
#sudo update-alternatives --install "/usr/bin/jconsole" "jconsole"
$JDK_PATH/bin/jconsole $PRIORITY
#sudo update-alternatives --install "/usr/bin/jdb" "jdb" $JDK_PATH/bin/jdb
$PRIORITY
#sudo update-alternatives --install "/usr/bin/jhat" "jhat"
$JDK_PATH/bin/jhat $PRIORITY
#sudo update-alternatives --install "/usr/bin/jinfo" "jinfo"
$JDK_PATH/bin/jinfo $PRIORITY
#sudo update-alternatives --install "/usr/bin/jmap" "jmap"
$JDK_PATH/bin/jmap $PRIORITY
#sudo update-alternatives --install "/usr/bin/jps" "jps" $JDK_PATH/bin/jps
$PRIORITY
#sudo update-alternatives --install "/usr/bin/jrunscript" "jrunscript"
$JDK_PATH/bin/jrunscript $PRIORITY
#sudo update-alternatives --install "/usr/bin/jsadebug" "jsadebug"
$JDK_PATH/bin/jsadebug $PRIORITY
#sudo update-alternatives --install "/usr/bin/jstack" "jstack"
$JDK_PATH/bin/jstack $PRIORITY
#sudo update-alternatives --install "/usr/bin/jstat" "jstat"
$JDK_PATH/bin/jstat $PRIORITY
#sudo update-alternatives --install "/usr/bin/jstad" "jstad"
$JDK_PATH/bin/jstad $PRIORITY
#sudo update-alternatives --install "/usr/bin/native2ascii" "native2ascii"
$JDK_PATH/bin/native2ascii $PRIORITY
#sudo update-alternatives --install "/usr/bin/rmic" "rmic"
$JDK_PATH/bin/rmic $PRIORITY
#sudo update-alternatives --install "/usr/bin/schemagen" "schemagen"
$JDK_PATH/bin/schemagen $PRIORITY
#sudo update-alternatives --install "/usr/bin/serialver" "serialver"
$JDK_PATH/bin/serialver $PRIORITY
#sudo update-alternatives --install "/usr/bin/wsgen" "wsgen"
$JDK_PATH/bin/wsgen $PRIORITY
#sudo update-alternatives --install "/usr/bin/wsimport" "wsimport"
$JDK_PATH/bin/wsimport $PRIORITY
#sudo update-alternatives --install "/usr/bin/xjc" "xjc" $JDK_PATH/bin/xjc
$PRIORITY

Además se debe exportar la variable de entorno JAVA_HOME como te explicaron
antes en este hilo, una guía sobre como hacerlo acá:
http://www.cyberciti.biz/faq/linux-unix-set-java_home-path-variable/

Esto hace parte de un "abandonware" que empecé y nunca terminé, la idea era
crear un script que me hiciera todo el camello de configurar el JDK, pero
al final lo hago a mano, quizás algún día lo termine.

$JDK_PATH es la ruta donde se descomprime el JDK
$JRE_PATH es la ruta donde se descomprime el JRE
$PRIORITY es un numero entero que representa la prioridad de ejecución (ver
uso del comando update-alternatives)

Parte de la info la tome de este sitio:
http://www.guia-ubuntu.org/index.php?title=Java

Página del manual del comando update-alternatives
http://manpages.ubuntu.com/manpages/precise/es/man8/update-alternatives.8.html


Si usas el galternatives, solo es buscar la alternativa y
modificarla dándole una prioridad mas alta que la establecida, si no existe
la alternativa  creas una nueva.

Espero te sirva y excusas por lo extenso ;)


-- 
Wilmar A. Giraldo Sanchez
Linux User Number: 475317
Linux Machine Number: 383338
Ubuntu User 26201



Más información sobre la lista de distribución Ubuntu-co