Todas las instalaciones más recientes de Java /usr/libexec/java_home
que se utiliza para seleccionar entre varias instalaciones de Java en una máquina. Comprobar su existencia y la salida del comando son buenas formas de ver si Java está instalado sin activar la ventana emergente.
if [[ -e /usr/libexec/java_home ]]; then
JAVA_HOME=$(/usr/libexec/java_home)
else
echo "Java not installed"
fi
También puede utilizarlo para buscar un específico versión de Java. Por ejemplo:
|ruby-2.1.1| cortana in ~
○ → /usr/libexec/java_home -v 1.6
/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
|ruby-2.1.1| cortana in ~
○ → /usr/libexec/java_home -v 1.7
/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home
|ruby-2.1.1| cortana in ~
○ → /usr/libexec/java_home -v 1.8
/Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home