¿Cómo lanzar aplicaciones que requieren Java en Mountain Lion con solo Java 7 instalado?

3

Acabo de recibir un nuevo MacBook Air que se envió con Mountain Lion 10.8.4 y no tiene instalado Java. Hay un /usr/bin/java , pero ejecutarlo me pedirá que instale un tiempo de ejecución Java 6 distribuido por Apple en un diálogo de Cocoa.

Sin embargo, Oracle ya no es compatible con Java 6 y no quiero ejecutar una instalación de Java no compatible y probablemente insegura.

Entonces, fui a Descargas de Java SE de Java e instalé el último JDK, jdk-7u25-macosx-x64 . Ahora, el único Java que tengo en esta máquina es 1.7.0_25, distribuido por Oracle. /usr/bin/java -version ahora funciona.

Acabo de ejecutar brew cask install eclipse y terminé con Eclipse 4.3. Cuando intenté ejecutarlo por primera vez, recibí el mismo mensaje para instalar un tiempo de ejecución de Java como si no tuviera Java instalado.

Miré aquí en Apple StackExchange y encontré enlace . Después de ejecutar sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk /System/Library/Java/JavaVirtualMachines/1.6.0.jdk , ahora puedo iniciar Eclipse.

Sin embargo, cuando intento iniciar otras aplicaciones que requieren Java, como /usr/share/java/Tools/Java VisualVM.app y /opt/homebrew-cask/Caskroom/webstorm/6.0.2a/WebStorm.app , aparece un error que indica que no hay disponible Java 1.6 compatible (ver más abajo).

¿Alguien sabe si es posible hacer que estas otras aplicaciones funcionen o realmente requieren Java 6 y no pueden trabajar con Java 7?

    
pregunta user52440 13.07.2013 - 18:38

1 respuesta

3

El cuadro de diálogo se muestra porque Java de Oracle solo tiene un conjunto parcial de "Capacidades JVMC" y se anuncia a sí mismo como solo capaz de usar la línea de comandos.

Como superusuario (use 'sudo' si está editando en Terminal), debe editar /Library/Java/JavaVirtualMachines/jdk.1.7.[version-and-release].jdk/Contents/Info.plist y buscar la siguiente clave:

<key>JVMCapabilities</key>
  <array>
    <string>CommandLine</string>
  </array>

y agrégalo para incluir los valores faltantes:

<key>JVMCapabilities</key>
  <array>
    <string>CommandLine</string>
    <string>JNI</string>
    <string>BundledApp</string>
  </array>

Después de eso, tienes que reiniciar, cerrar sesión o killall Finder , lo que parece funcionar. (La gente ha informado que reiniciar el Finder fue suficiente, pero tuve que cerrar sesión).

-
Fuente .

    
respondido por el Jawa 29.01.2014 - 13:43

Lea otras preguntas en las etiquetas