¿Cómo instalar un JDK específico en Mac OS X?

Quiero instalar un JDK específico (el más reciente, por ejemplo). Para esto, fui a la página de inicio de descarga de JDK: http://java.sun.com/javase/downloads/index.jsp . Busqué una versión para Mac, pero estoy un poco sorprendido de solo ver versiones descargables para Linux, Windows y Solaris …

Aquí está el mensaje para Mac:

“Apple Computer suministra su propia versión de Java. Use la característica Actualización de software (disponible en el menú de Apple) para verificar que tenga la versión más actualizada de Java para su Mac”.

OK PERO … cuando actualizo Java con Mac tengo un JRE y no un JDK …

No entiendo por qué no existe una versión JDK que sea fácilmente descargable / instalable (como un contenedor para descomprimir?) Para Mac …

En un comentario sobre la respuesta de @ Thilo, @mobibob preguntó cómo configurar JAVA_HOME en su .bash_profile en una Mac. Responder:

export JAVA_HOME=`/usr/libexec/java_home` 

Esto asignará dinámicamente a JAVA_HOME la ubicación del primer JDK enumerado en la pestaña “General” de la utilidad “Preferencias de Java”.

Consulte las preguntas y respuestas técnicas de Apple 1170: https://developer.apple.com/library/content/qa/qa1170/_index.html

EDITAR:

Si prefieres los paréntesis para la sustitución de comandos, esto también funciona:

 export JAVA_HOME=$(/usr/libexec/java_home) 

Como dice el mensaje, debes dirigirte a Apple, no a Sun, para Java en la Mac. Por lo que sé, Apple JDK 6 está instalado por defecto en Mac OS X 10.6 (Snow Leopard). Tal vez necesite instalar las herramientas de desarrollador desde su DVD de instalación de Mac OS X (las herramientas de desarrollo son una instalación opcional desde el DVD del sistema operativo).

Ver: http://developer.apple.com/java/

NOTA Esta respuesta del 16 de octubre de 2009 ahora está desactualizada; ahora puede obtener el JDK para Mac OS X desde la página de descarga de JDK normal en el sitio web de Oracle.

Para personas que usan cualquier LION OS X 10.7.X

Cargaron Java SE 6 versión 1.6.0_26 disponible aquí

http://support.apple.com/kb/dl1421

Compré una MacBook Pro ayer ( Mac OS X v10.8 (Mountain Lion)) y no hay JDK instalado por defecto …

Además de javac, también encontré que no tenía paquetes como SVN instalado. Resulta que puedes obtener todo desde la página del desarrollador de Apple (necesitarás registrarte con tu AppleID). SVN es parte del paquete “Herramientas de línea de comandos”.

Ingrese la descripción de la imagen aquí

Esto es lo que sucede en una nueva MacBook:

Ingrese la descripción de la imagen aquí

Ingrese la descripción de la imagen aquí

Espero que esto ayude a otros novatos como yo;)

La explicación es que JDK es un poco específico y no contiene la biblioteca tools.jar . Para mi desarrollo, necesito esta biblioteca y el JDK de Mac no lo proporciona:

(Véase http://developer.apple.com/mac/library/documentation/Java/Conceptual/Java14Development/02-JavaDevTools/JavaDevTools.html )

tools.jar no existe. Las clases que generalmente se encuentran aquí se incluyen en classes.jar. Los scripts que dependen de la existencia de tools.jar deben reescribirse en consecuencia.

¡Apesta!

La comstackción con -ource 1.5 -target 1.5 (en un entorno JDK 6) respetará solo los elementos de lenguaje que estaban en 1.5 y anteriores. Estupendo. Pero no hubo cambios de idioma en 6 de todos modos. El problema con este enfoque (en Mac con 1.6) es que el uso de clases que vinieron después de 1.5 todavía se comstackrá porque existen en el rt.jar. Por lo tanto, uno podría ejecutar una excepción de 1.5 env y obtener una clase no encontrada sin previo aviso al comstackr. Descubrí esto de la peor manera con javax.swing.event.RowSorterEvent / Listener. Ambos ingresaron “Desde 1.6” pero no son capturados con -fuente 1.5

Si instaló brew, cmd a continuación será útil:

brew cask install java

A partir de Mac OS X v10.6 (Snow Leopard), puede ejecutar Java 6 en modo de 32 bits en equipos Mac equipados con procesadores Intel de 32 o 64 bits.

Si no puede actualizar a Snow Leopard, Soy Latte es una versión pre comstackda de Java 6 para Intel 32 bits.

Hay varios problemas complicados con tener múltiples versiones de Java (Java 6 propia de Apple y Oracle JDK 7 o incluso 8) en el sistema Mac OS X de uno, y el uso de diferentes versiones para diferentes aplicaciones. Pasé un tiempo escribiendo mi experiencia de mi experiencia de instalar y configurar varias versiones de JDK en Mac OS X 10.9.2 .

La forma más fácil es usar Homebrew . Instale Homebrew y luego:

 brew tap caskroom/versions brew cask install java7 

Puede enumerar todas las versiones disponibles con el siguiente comando: brew cask search java

Creo que esta otra pregunta sobre el desbordamiento de stack podría ayudar:

Cómo obtener JDK 1.5 en Mac OS X

Básicamente dice que si necesita comstackr o ejecutar una aplicación Java con una versión anterior del JDK (por ejemplo, 1.4 o 1.5), puede hacerlo utilizando el 1.6 porque es retrocompatible. Para hacerlo, necesitará agregar el parámetro -source 1.5 y / o -target 1.5 en las opciones de javac o en su IDE.

JDK es el Java Development Kit (utilizado para desarrollar software de Java).

JRE es Java Runtime Environment (se usa para ejecutar cualquier archivo .jar ‘Java software’).

El JDK contiene un JRE dentro de él.

En Windows cuando actualiza Java, actualiza el JRE automáticamente.

En Mac no tienes un JRE separado, sino dentro del JDK, de modo que cuando actualices Java actualizarás tu JRE que está dentro de tu JDK; no instala un JDK para ti. Debes obtenerlo de otro lado.

¡Consulta esta increíble herramienta sdkman para administrar tu jdk y otras herramientas relacionadas con jdk con gran facilidad!

p.ej

 $sdk list java $sdk install java  

Como regla general, no puede instalar otras versiones de Java en una Mac que las proporcionadas por Apple a través de la Actualización de software. Si necesita Java 6, debe tener una computadora Intel de 64 bits. Siempre debe tener Java 5 y 1.4 y tal vez 1.3 instalados si tiene al menos OS X 10.4.

Si tiene MUCHA codazos y está dispuesto a trabajar con el software beta, puede instalar OpenJDK bajo OS X, pero no creo que quiera ir allí.