Cómo verificar y arreglar la versión de Java en OSX

Esta es la traducción del artículo original.


Atelier necesita como mínimo la versión de Java 1.8 para su ejecución. pero manejar diferentes versiones de Java puede ser algo enredada en OSX (Mac)

En este artículo trato de explicar cómo manejar diferentes versiones de Java en el Mac.

El siguiente comando nos puede ayudar a aclarar algunos problemas en nuestro entorno:

$ /usr/libexec/java_home -V
Matching Java Virtual Machines (3):
  1.8.0_60, x86_64:    "Java SE 8"    /Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home
  1.6.0_65-b14-466.1, x86_64:    "Java SE 6"    /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
  1.6.0_65-b14-466.1, i386:    "Java SE 6"    /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home​

NOTA: La traducción difiere del articulo original para actualizar su validez

El instalador de Oracle coloca Java dentro de la carpeta /Library/Internet Plug-Ins/JavaAppletPlugin.plugin

Sin embargo el comando "java" que se encuentra en /usr/bin/java es un enlace simbólico que apunta a otra ubicación, si desde el terminal ejecutamos:

$ whereis java
 /usr/bin/java
$ ls -la /usr/bin/java
lrwxr-xr-x  1 root  wheel  74 18 nov  2018 /usr/bin/java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java

Veremos que este enlace no apunta al directorio donde está la instalación del Java Home actual. Apunta a otro directorio "interno" del OSX. El ejecutable "java" que vemos ahí no es una copia del ejecutable java de la versión actual, sin embargo es un ejecutable falso que detecta a través del JAVA_HOME cual es el java actual y ejecuta el comando adecuado. Si no tienes ninguna versión instalada te indica que tienes que instalar una versión.

Si tienes varias versiones y hay algo mal configurado es posible que aún teniendo el JDK adecuado al ejecutar java se esté apuntando a otra versión. Hay varias posibilidades para solucionar estos problemas, el más básico es reemplazar directamente el enlace simbólico y redirigirlo a la versión de java especifica que queramos. Aunque hay otras posibilidades menos traumáticas si es que queremos conseguir un entorno más configurable, pero esto lo dejo para los más experimentados. ;-)

  • 0
  • 0
  • 15
  • 0