¿Por qué / usr / libexec / java_home no reconoce JDK 1.8?

Estoy tratando de instalar un JDK 8 en OS X Mountain Lion (para experimentar con las nuevas funciones de lambda).

Punto de partida

Una máquina recientemente actualizada de OS X 10.6 a 10.8, con

  • ¿Las instalaciones de OS X son específicas de un tipo de máquina?
  • Pros y contras de limpiar una nueva Mac?
  • Cuán seguro es para mí instalar Java en OS X 10.8
  • No se puede instalar Eclipse para todos los usuarios
  • ¿Por qué Java SE 6 Web Start (javaws) no encuentra el JRE con Java de Apple para OS X 2012-006 en Mountain Lion?
  • Suma de comprobación SHA2 para InstallESD.dmg de Sierra?
  • $ sw_vers ProductName: Mac OS X ProductVersion: 10.8.2 BuildVersion: 12C60 $ ls -l /Library/Java/JavaVirtualMachines/ Home@ -> jdk1.7.0_09.jdk/Contents/Home/ jdk1.7.0_09.jdk/ $ ls -l /System/Library/Java/JavaVirtualMachines/ 1.6.0.jdk/ 

    y esta carpeta de la era OS X 10.6:

     /System/Library/Frameworks/JavaVM.framework/Versions/ 

    En ~ / .bashrc, he establecido

     export JAVA_HOME=/Library/Java/JavaVirtualMachines/Home 

    Así que tengo

     $ java -version java version "1.7.0_09" Java(TM) SE Runtime Environment (build 1.7.0_09-b05) Java HotSpot(TM) 64-Bit Server VM (build 23.5-b02, mixed mode) $ /usr/libexec/java_home /Library/Java/JavaVirtualMachines/jdk1.7.0_09.jdk/Contents/Home 

    Cómo instalé JDK 8

    1. Descargué el file .tar.gz de http://jdk8.java.net/lambda/ y lo desempaqué en

      • /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home

      ( jdk1.8.0.jdk/Contents/Home las carpetas jdk1.8.0.jdk/Contents/Home manualmente)

    2. Cambió el enlace simbólico /Library/Java/JavaVirtualMachines/Home para apuntar a jdk1.8

    Ahora tengo

     $ java -version openjdk version "1.8.0-ea" OpenJDK Runtime Environment (build 1.8.0-ea-lambda-nightly-h2135-20121203-b67-b00) OpenJDK 64-Bit Server VM (build 25.0-b05, mixed mode) $ echo $JAVA_HOME /Library/Java/JavaVirtualMachines/Home $ ls /Library/Java/JavaVirtualMachines Home@ -> jdk1.8.0.jdk/Contents/Home/ ... 

    Pero a la utilidad java_home no parece importarle:

     $ /usr/libexec/java_home /Library/Java/JavaVirtualMachines/jdk1.7.0_09.jdk/Contents/Home 

    Ni siquiera sabe que hay un JDK 8 disponible:

     $ /usr/libexec/java_home -v 1.8* Unable to find any JVMs matching version "1.8*". 

    Pregunta

    Me gustaría que la utilidad /usr/libexec/java_home encuentre mis JDK instalados, para que pueda usar algo como esto:

     alias setjdk17='export JAVA_HOME=$(/usr/libexec/java_home -v 1.7*)' alias setjdk18='export JAVA_HOME=$(/usr/libexec/java_home -v 1.8*)' 

    y deshacerse del enlace simbólico de Home . Alguien sabe

    • ¿Cómo puedo instalar correctamente JDK 8?
    • ¿Cómo puedo hacer que /usr/libexec/java_home reconozca?

  • MacBook japonés deja de cambiar a japonés
  • ¿Cuál es el atajo de keyboard para insert un comentario durante el seguimiento de cambios en Word?
  • Lion no responde a los clics del mouse sobre VNC
  • ¿Hay alguna otra forma de volver a instalar OS X cuando falla la recuperación?
  • No se puede instalar con el administrador
  • Cifrado compatible con GUI multiplataforma
  • One Solution collect form web for “¿Por qué / usr / libexec / java_home no reconoce JDK 1.8?”

    También debe copyr el directory Contents / MacOS e Info.plist desde el 1.7 SDK y adaptarlos (cambiando las cadenas de versión en él).

    Entonces tú puedes:

     $ export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home $ java -version openjdk version "1.8.0-ea" $ /usr/libexec/java_home -v 1.8* /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home 

    Tenga en count que esto es un truco y no intenté con nada más que comenzar con Java … Estaba desarrollando su consejo para crear el package.

    Loving Apple Products like poisoning (iPhone, iPad, iMac, Macbook, iWatch).