Instalar Oracle Java 7 en Ubuntu 12.04

on


 Instalar Oracle Java 7 en Ubuntu 12.04

Nota:


OpenJDK y el plugin IcedTea son mantenidos por la comunidad y reciben actualizaciones periódicas. Funciona bien para la mayoría de los propósitos,

Lo más probable es que no necesitemos Oracle Java en absoluto, pero podemos vernos en la necesidad de instalarlo y esto es un problema, ya que fue retirado de los repositorios "partner" por la revocación de la anterior licencia.



OpenJDK


Vamos a empezar con OpenJDK, ya que hay cierta confusión con los tipos de paquetes y sus siglas JRE y JDK y de paso nos servirá para tener las cosas claras en la instalación de Oracle Java:

En los repositorios oficiales de Ubuntu tenemos 2 versiones de Java, la 6 y la 7, además del plugin "icedtea":

Y aquí es donde se produce la confusión, ya que cada versión dispone de 2 paquetes:  jre y jdk
  • Para la versión 6 tenemos 2 paquetes: "openjdk-6-jre" y "openjdk-6-jdk"
  • Para la versión 7 tenemos 2 paquetes: "openjdk-7-jre" y "openjdk-7-jdk"
Vamos a especificar los distintos paquetes de Java para su mejor comprensión:
  • JDK > "Java Development Kit" (Kit de desarrollo Java) > Versión para los desarrolladores. Incluye el compilador de Java (javac), JRE y JVM.
  • JRE > "Java Runtime Environment" (Entorno de ejecución Java) > Versión para los usuarios. Conjunto de utilidades de Java, que actúa como un "intermediario" entre el sistema operativo y Java. Incluye JVM.
  • JVM > "Java Virtual Machine" (Máquina Virtual de Java) > Programa que ejecuta el código Java previamente compilado (bytecode) mientras que las librerías de clase estándar son las que implementan el API de Java. Ambas JVM y API deben ser consistentes entre sí, de ahí que sean distribuidas de modo conjunto.

La mayoría de los usuarios solo deben de instalar la JRE, y los desarrolladores deberán instalar la JDK, asegurándose de tener la misma versión de java y javac, (ver comandos siguientes).

Comandos de interés para controlar Java:


Comando para saber la versión del entorno de Java "runtime" (JRE):
java -version
Comando para saber la versión del compilador de Java "javac" (JDK):
javac -version
Comando para seleccionar la versión de Java Runtime (JRE), si tenemos varias (no del compilador "javac")
sudo /usr/sbin/update-alternatives --config java


Oracle Java


En anteriores versiones podíamos instalar Java de Oracle-Sun desde los repositorios "partner", pero la versión Oracle Java (JVM / JDK) ya no está disponible en los repositorios de Debian / Ubuntu, porque Oracle retiró la licencia de distribuidor de Java" (JDL).

Por lo que, algunos usuarios de Ubuntu necesitarán instalar la versión de Oracle o antiguo Sun, entre ellos los que utilizan programas como LIMEWIRE, FROSTWIRE, diversos juegos, ...

Si necesitas si o si la versión de Oracle o no quieres usar OpenJDK, se puede descargar desde su página e instalarlo manualmente. En la guía para Ubuntu 11.10 expuse como hacerlo de forma más fácil añadiendo unos repositorios, pero no me termina de funcionar bien (me imagino que hasta que se actualice para Ubuntu 12.04). Así que vamos a ver como hacerlo manualmente.

Descarga desde la página oficial de Oracle


Desde la página oficial de Oracle seleccionamos la versión de Java que queremos, la JRE (para usuarios) o la JDK (para desarrolladores). Vamos a ver las 2:


Instalación de JRE para usuarios


Una vez seleccionada la página de descarga de JRE, activamos la casilla para aceptar la licencia y seleccionamos el paquete para Linux ".tar.gz" de 32 bits "jre-[version]-linux-i586.tar.gz" o 64 bits "jre-[version]-linux-x64.tar.gz", según sea la arquitectura de nuestro Ubuntu. En este ejemplo voy a instalar:  jre-7u3-linux-x64.tar.gz (versión 7u3 para 64 bits)


El número de versión "[versión]" puede variar.
Los comandos a continuación deben de ser modificados con el nombre del archivo exacto que tú te hayas descargado, ya que puede variar la versión y la arquitectura.
Una vez descargado en nuestra carpeta personal (no en la carpeta Descargas), lo descomprimimos con el comando:
tar -xvf jre-7u3-linux-x64.tar.gz
Si no lo tenemos, creamos un directorio "/jvm/jdk1.7.0" en "/usr/lib", donde moveremos la carpeta descomprimida:
sudo mkdir -p /usr/lib/jvm/jre1.7.0
Movemos la carpeta descomprimida al directorio creado:
sudo mv jre1.7.0_03/* /usr/lib/jvm/jre1.7.0/
Ejecutamos el siguiente comando para java:
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jre1.7.0/bin/java 0
Si hemos instalado OpenJDK u otras versiones de Java (la 6), debemos decirle al sistema que utilice jdk1.7.0 de Oracle con el comando:
sudo update-alternatives --config java
La terminal nos responderá algo similar a esto:
Hay 3 opciones para la alternativa java (proporcionando /usr/bin/java).

Selección Ruta Prioridad Estado
------------------------------------------------------------
0 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 modo automático
1 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 modo manual
2 /usr/lib/jvm/java-6-sun/jre/bin/java 63 modo manual
* 3 /usr/lib/jvm/jre1.7.0/jre/bin/java 3 modo manual

Presione Entrar para mantener la opción actual [*], o escriba el número de la selección:

Seleccionamos la opción que contenga "jre1.7.0". En este caso como es la 3, escribimos 3 y pulsamos Enter.

Instalar el plugin, para el navegador:

Lo que vamos a hacer es para Firefox, pero el plugin también se actualizará en Chromium (posiblemente otros navegadores también, no los he probado).

En primer lugar, debemos de eliminar anteriores plugin de Java:
rm -f ~/.mozilla/plugins/libnpjp2.so ~/.mozilla/plugins/libjavaplugin_oji.so
sudo rm -f /usr/lib/firefox/plugins/libnpjp2.so /usr/lib/firefox/plugins/libjavaplugin_oji.so
Creamos el directorio para los plugins, si no lo tenemos:
mkdir -p ~/.mozilla/plugins
Ahora, vamos a crear un enlace simbólico para el nuevo Java en el directorio de plugins de Mozilla:

- Para 64 bit:
ln -s /usr/lib/jvm/jdk1.7.0/jre/lib/amd64/libnpjp2.so ~/.mozilla/plugins/
- Para 32 bit, sería:
ln -s /usr/lib/jvm/jre1.7.0/lib/i386/libnpjp2.so ~/.mozilla/plugins/


Instalación de JDK para desarrolladores


Una vez seleccionada la página de descarga de JDK, activamos la casilla para aceptar la licencia y seleccionamos el paquete para Linux ".tar.gz" de 32 bits "jdk-[version]-linux-i586.tar.gz" o 64 bits "jdk-[version]-linux-x64.tar.gz", según sea la arquitectura de nuestro Ubuntu. En este ejemplo voy a instalar: jdk-7u3-linux-x64.tar.gz (versión 7u3 para 64 bits)


El número de versión "[versión]" puede variar.
Los comandos a continuación deben de ser modificados con el nombre del archivo exacto que tú te hayas descargado, ya que puede variar la versión y la arquitectura.
Una vez descargado en nuestra carpeta personal (no en la carpeta Descargas), lo descomprimimos con el comando:
tar -xvf jdk-7u3-linux-x64.tar.gz
Si no lo tenemos, creamos un directorio "/jvm/jdk1.7.0" en "/usr/lib", donde moveremos la carpeta descomprimida:
sudo mkdir -p /usr/lib/jvm/jdk1.7.0
Movemos la carpeta descomprimida al directorio creado:
sudo mv jdk1.7.0_03/* /usr/lib/jvm/jdk1.7.0/
Ejecutamos los siguientes comandos para java, javac (compilador) y javaws, respectivamente:
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.7.0/bin/java" 1
sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.7.0/bin/javac" 1
sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/jvm/jdk1.7.0/bin/javaws" 1
Si hemos instalado OpenJDK u otras versiones de Java (la 6), debemos decirle al sistema que utilice jdk1.7.0 de Oracle con el comando:
sudo update-alternatives --config java
La terminal nos responderá algo similar a esto:
Hay 3 opciones para la alternativa java (proporcionando /usr/bin/java).

Selección Ruta Prioridad Estado
------------------------------------------------------------
0 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 modo automático
1 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 modo manual
2 /usr/lib/jvm/java-6-sun/jre/bin/java 63 modo manual
* 3 /usr/lib/jvm/jdk1.7.0/jre/bin/java 3 modo manual

Presione Entrar para mantener la opción actual [*], o escriba el número de la selección:

Seleccionamos la opción que contenga "jdk1.7.0". En este caso como es la 3, escribimos 3 y pulsamos Enter.

Instalar el plugin, para el navegador:

Lo que vamos a hacer es para Firefox, pero el plugin también se actualizará en Chromium (posiblemente otros navegadores también, no los he probado).

En primer lugar, debemos de eliminar anteriores plugin de Java:
rm -f ~/.mozilla/plugins/libnpjp2.so ~/.mozilla/plugins/libjavaplugin_oji.so
sudo rm -f /usr/lib/firefox/plugins/libnpjp2.so /usr/lib/firefox/plugins/libjavaplugin_oji.so
Creamos el directorio para los plugins, si no lo tenemos:
mkdir -p ~/.mozilla/plugins
Ahora, vamos a crear un enlace simbólico para el nuevo Java en el directorio de plugins de Mozilla:

- Para 64 bit:
ln -s /usr/lib/jvm/jdk1.7.0/jre/lib/amd64/libnpjp2.so ~/.mozilla/plugins/
- Para 32 bit, sería:
ln -s /usr/lib/jvm/jdk1.7.0/jre/lib/i386/libnpjp2.so ~/.mozilla/plugins/

Y para finalizar podemos verificar la instalación desde la página de Oracle:
http://www.java.com/es/download/installed.jsp

Bloggroll

Páginas vistas en total

Blog Archive