Mitos y realidades de la Server JRE

CyberGutenbergSmallEl mes pasado como parte de las medidas para limpiar la imagen de Java y mejorar la seguridad de la plataforma, Oracle lanzo oficialmente una variante de maquina virtual denominada Server JRE.

He visto que en algunas listas de correo con temática Java se publicaron bastantes dudas acerca de esta «nueva» JRE y recolecto acá las que me parecieron las más interesantes.

1) ¿Que es Server JRE?
Dada la confusión que hubo por la frecuencia elevada de ataques al plugin web de Java, Oracle decidió publicar una maquina virtual denominada Server JRE, que podríamos definir como una distribución de JVM lista para entornos de servidor y SIN el plugin web que tan mala imagen le dio a la plataforma.

2) ¿Mi aplicación requiere un compilador, puedo compilar con Server JRE?
Si, a pesar de que el nombre sea JRE , incluye algunas herramientas comunes para servidores como javac, jvisualvm y jconsole. De hecho la estructura del redistribuible es más parecida con un JDK que con el JRE común. Vale la pena resaltar que esta lista de herramientas no es definitiva.

3) ¿Si desactivo el plugin web de Java JRE obtengo una Server JRE?
No, el Java JRE solo incluye herramientas para la ejecución de programas, lo que en servidores suele ser insuficiente.

4) ¿Si uso la JVM con -server es lo mismo que utilizar Server JRE?
No, la opción -server activa algunas opciones de ejecución en la maquina virtual diseñadas para servidores. La server JRE por otra parte es más una distribución especial de la maquina virtual Hotspot (la maquina virtual Java de Oracle).

5) ¿Porque no encuentro la Server JRE para x86?
Actualmente solo esta disponible para arquitecturas de 64 bits a excepción de Solaris.

6) ¿Como instalo la Server JRE en Linux?
Igual que cualquier JRE o JDK, este ejemplo es especifico para el lanzamiento 7u21 pero el procedimiento ha sido el mismo desde que Romario jugaba futbol y no era diputado. La mayoría de estos pasos requieren acceso privilegiado (root o sudo)

– Movemos la Server JRE descargada desde el sitio oficial hacia la carpeta donde queremos almacenar el ejecutable (generalmente /opt)

1
mv server-jre-7u21-linux-x64.tar.gz /opt/

– Descomprimimos el archivo

1
2
cd /opt
tar -xzvf server-jre-7u21-linux-x64.tar.gz

(notese aca que el nombre del folder descomprimido sera jdk1.7.0.21 y no jre1.7.0.21)

– Agregamos los ejecutables de java a la variable de entorno PATH y creamos la variable JAVA_HOME (si es para todo el sistema se realiza en el archivo /etc/profile y si es para un usuario en ~/.bashrc)

1
2
echo "export JAVA_HOME=/opt/jdk1.7.0_21/">>/etc/profile
echo "export PATH=$PATH:/opt/jdk1.7.0_21/bin/">>/etc/profile

– Actualizmos las variables de entorno y verificamos nuestra version de Java

1
2
source /etc/profile
java -version

– Si la salida es esta, hemos configurado todo de forma adecuada.

1
2
3
java version "1.7.0_21"
Java(TM) SE Runtime Environment (build 1.7.0_21-b11)
Java HotSpot(TM) 64-Bit Server VM (build 23.21-b01, mixed mode)

Aca vale la pena resaltar que la cadena «Server VM» no es especifica de Server JRE, cualquier versión de Java dentro de JDK tendra la opción -server por defecto.

7) ¿Como instalo la Server JRE en Windows?
Con el instalador, Windows y Microsoft son practicos 🙂 (incluso para la NSA).

Deja una respuesta

Tu dirección de correo electrónico no será publicada.