Quiero hacer algo de programación con el último JavaFX, que requiere Java 8. Estoy usando IntelliJ 13 CE y Mac OS X 9 Mavericks. Ejecuté el instalador Java 8 de Oracle, y parece que los archivos terminaron en
/Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk
pero las versiones anteriores están en
/System/Library/Java/JavaFrameworks/jdk1.6....
No estoy seguro de por qué el último instalador pone esto en /Library
lugar de /System/Library
(ni cuál es la diferencia). Pero /usr/libexec/java_home
no encuentra 1.8, por lo que todas las publicaciones que he encontrado sobre cómo configurar su versión actual de Java no funcionan. Intenté agregar un enlace simbólico para que parezca que 1.8 está en el /System/Library...
camino, pero no ayuda. /usr/libexec/java_home -V
todavía solo enumera el antiguo Java 1.6.
Irónicamente, el panel de control "Java" en Preferencias del sistema muestra solo Java 1.8.
¿Por qué el instalador de Oracle no lo pone donde realmente va? ¿Y cómo puedo solucionar este problema?
fuente
/Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/
. El anterior fue donde fueron las versiones de Java proporcionadas por Apple, y como Apple ya no proporciona Java, la ubicación de instalación ha cambiado.Respuestas:
Oracle tiene un historial pobre para facilitar la instalación y configuración de Java, pero usando Homebrew , el último OpenJDK (Java 14) se puede instalar con:
Para los muchos casos de uso que dependen de una versión anterior (comúnmente Java 8), el proyecto AdoptOpenJDK lo hace posible con un paso adicional.
Los usuarios existentes de Homebrew pueden encontrarse
Error: Cask adoptopenjdk8 exists in multiple taps
debido a soluciones anteriores con diferentes instrucciones. Esto se puede resolver especificando completamente la ubicación conbrew cask install adoptopenjdk/openjdk/adoptopenjdk8
.fuente
brew update
, está listo para usarbrew cask
.brew cask install java
mi Mac El Capitan y se está descargandojdk-8u112-macosx-x64.dmg
.Error: Cask 'java8' is unavailable: No Cask with this name exists.
brew tap homebrew/cask-versions
y usobrew cask install homebrew/cask-versions/adoptopenjdk8
Nota: Oracle Java 8/9/10 ya no está disponible para descarga pública (cambio de licencia).
Primero instale y actualice brew desde la Terminal:
NUEVO a partir de junio de 2019
Para instalar los JDK desde AdoptOpenJDK:
ANTIGUO
Java 8:
Java más reciente:
fuente
brew tap
comando en la respuesta anterior. El primer y el tercer comando fueron suficientes.Error: Cask 'java8' is unavailable: No Cask with this name exists.
$ brew cask install adoptopenjdk8 Error: Cask adoptopenjdk8 exists in multiple taps: caskroom/versions/adoptopenjdk8 adoptopenjdk/openjdk/adoptopenjdk8
. Tengo que usarbrew cask install adoptopenjdk/openjdk/adoptopenjdk8
brew tap homebrew/cask-versions
ybrew cask install adoptopenjdk8
funciona para mí en Hi Sierra 10.13.6Java8 ya no está disponible en homebrew,
brew install java8
no funcionará.En cambio, use:
Consulte este compromiso para obtener detalles técnicos.
Tenga en cuenta también que puede ver problemas
Cask adoptopenjdk8 exists in multiple taps
. Este es un problema conocido que se está trabajando actualmente y que puede ver aquí:https://github.com/AdoptOpenJDK/homebrew-openjdk/issues/106
Para aquellos que no quieren ver los detalles, aquí hay un resumen:
fuente
AdoptOpenJDK/openjdk
lugar de usarhomebrew/cask-versions/adoptopenjdk8
brew cask install homebrew/cask-versions/adoptopenjdk8
funcionó para míAcabo de hacer esto en mi MBP y tuve que usar
para que java8 se instale.
fuente
brew tap caskroom/versions
se requiere antes de instalar java8brew install homebrew/cask-versions/java8
por la victoria!Una opción que realmente me gusta para ejecutar aplicaciones en mi computadora local es usar Docker. Simplemente puede ejecutar su aplicación dentro del contenedor JDK oficial, lo que significa que no tiene que preocuparse por configurar todo en su máquina local (o preocuparse por ejecutar múltiples versiones diferentes de JDK para diferentes aplicaciones, etc.)
Aunque esto podría no ayudarte con tus problemas de instalación actuales, es una solución que significa que puedes esquivar el campo minado de problemas relacionados con el intento de hacer que Java se ejecute correctamente en tu máquina de desarrollo.
Los beneficios son:
Un ejemplo muy simple:
Crea un
Dockerfile
:java:8
- para usar Java 7, puede especificar:java:7
)/usr/src/myapp
dentro del contenedorCrea un
docker-compose.yml
archivo:Ahora, supongamos que tenemos este archivo Java:
HelloWorld.java
Entonces tenemos la siguiente estructura de archivos:
Puedes hacer varias cosas de Java como:
compilar:
correr:
docker-compose run
- ejecuta un comando desde el contenedor-rm
le dice a Docker que retire el contenedor una vez que el comando haya terminado de ejecutarsejava
es el nombre del servicio / contenedor (de nuestro archivo docker-compose) contra el cual se ejecutará este comandoEsta es una forma bastante buena de manejar diferentes versiones de Java para diferentes aplicaciones sin hacer un desastre completo de su configuración local :).
Aquí hay un ejemplo un poco más complejo que tiene Maven y una aplicación simple de Spring
Descargo de responsabilidad:
fuente
Suposición: máquina Mac y ya has instalado homebrew.
Instale el barril (con Homebrew 0.9.5 o superior, el barril está incluido, así que omita este paso):
Para instalar la última versión de Java:
Para instalar Java 8:
Si desea instalar / administrar varias versiones, puede usar 'jenv':
Instalar y configurar jenv:
Agregue el java instalado a jenv:
Para ver todos los java instalados:
El comando anterior le dará la lista de Java instalado:
Configure la versión de Java que desea utilizar:
Para configurar JAVA_HOME:
fuente
Tengo el mismo problema que resolver, porque necesito instalar JDK8 para ejecutar Android SDK Manager (porque parece que no funciona bien con JDK9). Sin embargo, te digo cómo resuelvo todos los problemas en una Mac (Sierra).
Primero, necesitas preparar cerveza con barril y jenv .
brew tap caskroom/versions
brew install jenv
brew cask install java8
(ojava7
, ojava
si desea instalar la versión más reciente, jdk9)jenv versions
para enumerar todas las versiones instaladas en su máquina y luego activar la que desee conjenv global [JDK_NAME_OF_LIST]
Puede encontrar otra información útil aquí en este Github Gist brew-java-and-jenv.md , en este blog Instalar múltiples JDK en una Mac y en el sitio web de Jenv
fuente
fuente
Si tiene varias versiones de Java en su máquina y desea elegirlas dinámicamente en tiempo de ejecución, es decir, en mi caso, tengo dos versiones:
Puede cambiarlos modificando el
/etc/profile
contenido. Simplemente agregue (o modifique) las siguientes dos líneas al final del archivo:En mi caso, debería ser el siguiente si quiero usar:
Java 7:
Java 8:
Después de guardar el archivo, ejecute
source /etc/profile
y debería funcionar. Estos son los resultados cuando uso la primera y segunda opción en consecuencia:Java 7:
Java 8:
El proceso es similar si su carpeta java se encuentra en diferentes ubicaciones.
fuente
alias java8=/Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/Contents/Home/bin/java
?Parece que nadie ha mencionado SDK man ( https://sdkman.io/ ) todavía.
SKD man permite instalar múltiples versiones de Java en Mac y cambiar fácilmente entre estas versiones. Hay más información disponible en https://sdkman.io/usage .
Por ejemplo:
fuente
Usa el instalador, Luke
Otras respuestas que sugieren el administrador de paquetes Homebrew me parecen un poco extremas. Estoy seguro de que Homebrew tiene algunos buenos usos. Pero simplemente para ejecutar Java, instalando Homebrew es un paso adicional innecesario. Si su objetivo es simplemente ejecutar Java, simplemente descargue un instalador de Mac de una fuente confiable.
Tiene múltiples fuentes para obtener una aplicación de instalación fácil de usar para poner Java en su Mac. Ejecute el instalador en su Mac tal como lo hace con muchas otras aplicaciones.
Aquí hay un diagrama de diagrama de flujo para encontrar una fuente de Java 11, algunos de los cuales también ofrecen Java 8.
Descargue un instalador de un proveedor como AdoptOpenJDK.net.
Ejecute el instalador.
JavaVirtualMachines
la carpeta ahora es correctaNo es un problema.
La carpeta
/Library/Java/JavaVirtualMachines/
es el nuevo hogar para JVM s en macOS .Para instalar una JVM, use un instalador, que se describe a continuación.
Para desinstalar, simplemente use el Finder para eliminar una JVM de esa carpeta. Se le solicitará la contraseña de administrador del sistema para completar la eliminación.
Java 9 y 10 y 11
En 2010, Apple se unió al proyecto OpenJDK , junto con Oracle , IBM , Red Hat , Azul y otros proveedores de Java. Cada miembro aporta código fuente, pruebas y comentarios a la base de código unificada de OpenJDK.
Apple contribuyó con la mayor parte de su código específico de Mac para su JVM. Ahora Apple ya no lanza su propia JVM específica de Mac. Ahora tiene su opción de proveedor JVM, con compilaciones provenientes de la base de código OpenJDK.
Encontrará el código fuente en: http://openjdk.java.net
Nueva cadencia de lanzamiento
Tenga en cuenta que en 2017, Oracle, JCP y OpenJDK adoptaron un nuevo plan de "tren de lanzamiento" rápido para que las versiones de Java programadas regularmente se entreguen de manera predecible.
Lea esta publicación de blog de Azul Systems 2018-07 para obtener más detalles, Eliminando Java Update Confusion por Simon Ritter .
También lea Java Is Still Free .
Vendedores
Para obtener una lista bastante exhaustiva de implementaciones JVM pasadas y presentes, consulte esta página en Wikipedia .
Aquí hay una discusión de algunos vendedores. Consulte el diagrama de flujo anterior para obtener más proveedores.
Oracle JDK
Oracle proporciona instaladores JDK y JRE para múltiples plataformas, incluyendo macOS.
A lo largo de los años desde la adquisición de Sun, Oracle ha combinado las mejores partes de los dos motores JVM, HotSpot y JRocket , y los ha fusionado en el proyecto OpenJDK utilizado como base para sus propias implementaciones de Java.
Su nuevo plan de negocios, a partir de 2018, es proporcionar una implementación de Java con la marca Oracle por una tarifa en producción, y sin costo para su uso en desarrollo / pruebas / demostración. El soporte para versiones anteriores requiere un programa de soporte pago. Han declarado su intención de que su lanzamiento de marca esté en paridad de características con el lanzamiento de OpenJDK. Incluso han donado sus complementos comerciales como Flight Recorder al proyecto OpenJDK.
Oracle también lanza una compilación de OpenJDK sin soporte: http://jdk.java.net/
Oracle ha producido un JDK de propósito especial, GraalVM .
Zulu & Zing de Azul
Azul Systems ofrece una variedad de productos JVM.
Zulu
línea se basa directamente en OpenJDK y está disponible sin costo con planes de soporte pagos opcionales.Zing
línea ofrece productos JVM comerciales mejorados con implementaciones técnicas alternativas como un recolector de basura especializado .Ambas líneas ofrecen instaladores para macOS.
Actualmente estoy usando Zulu para Java 10.0.1 en macOS High Sierra con IntelliJ 2018.2 y Vaadin 8 . Lo descargué de esta página . Por cierto, no encuentro ningún elemento relacionado con Java instalado en la aplicación Apple System Preferences .
AdoptOpenJDK.net
AdoptOpenJDK es un esfuerzo liderado por la comunidad para construir binarios de la fuente OpenJDK. Tienen la intención de ofrecer actualizaciones con el tiempo, según lo donado por miembros de la comunidad.
OpenJ9 por Eclipse
El proyecto OpenJ9 es otra implementación del motor JVM, una alternativa al HotSpot .
Ahora patrocinado por la Fundación Eclipse, con tecnología y respaldo donados por IBM en 2017.
Para los binarios preconstruidos, lo remiten al proyecto AdoptOpenJDK mencionado anteriormente.
Cómo instalar
Los instaladores proporcionados por Oracle o por Azul son completamente simples de operar. Simplemente ejecute la aplicación de instalación en su Mac. Aparece una ventana para indicar el progreso de la instalación.
Cuando termine, verifique su instalación de JVM:
/Library/Java/JavaVirtualMachines/
carpeta para ver un elemento para la nueva JVM.java -version
para ver la marca y el número de versión de su JVM.Después de verificar el éxito, desmonte la imagen .dmg en el Finder. Luego deseche el archivo .dmg que descargó.
fuente
Tengo aplicaciones que usan Java 7 y 8 y tengo que ir y venir todo el tiempo.
Yo uso este script escrito por Johan:
http://www.jayway.com/2014/01/15/how-to-switch-jdk-version-on-mac-os-x-maverick/
Ahora puede configurarlo al inicio o llamar al script después.
Instala el JDK para Mac.
Java 7
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
Java 8
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
Recomendación actualizada !! :
Utilice jenv https://www.jenv.be/ y homebrew.
Entonces es justo
jenv global oracle6401.6.0.39
y su conjunto.fuente
~/.bashrc
o~/.bash_profile
: export JAVA_HOME = "/ usr / libexec / java_home -v 1.8" y también agregar su$JAVA_HOME/bin
a$PATH
si el instalador de Java no lo ha hecho ya. (NOTA: reemplace las comillas dobles con comillas inversas para / usr / libexec / java_home, no se pueden ingresar comillas literales literales en los comentarios ...)brew tap caskroom/versions
seguido porbrew cask install java7
.Ejecute estos comandos en mac High Sierra
y verifique con el comando
fuente
Error: Download failed on Cask 'java8' with message: Download failed: https://download.oracle.com/otn-pub/java/jdk/8u202-b08/1961070e4c9b4e26a04e7f5a083f551e/jdk-8u202-macosx-x64.dmg
Usando cerveza
fuente
La mejor manera es usar el administrador de paquetes Brew pero el comando
falla con error:
Entonces usa
¿Cómo encontré "caskroom / versiones / java8": usando el comando brew search:
fuente
Si usted lo está utilizando no para uso personal, es posible que desee usar OpenJDK lugar para evitar cualquier posible demanda de Oracle.
fuente
Si estás en una Mac, entonces Homebrew es la forma de instalar cosas.
Parece que la versión 8 ya no es la más reciente, por lo que no está disponible usando la predeterminada
brew cask install java
.En cambio, logré hacer lo siguiente:
Si esto falla, intente el siguiente directamente:
Prueba con
brew cask list
ojava -version
fuente
Lo más sencillo es descargar el archivo dmg del siguiente sitio e instalarlo haciendo doble clic
busque las JVM disponibles en el directorio de inicio
y actualice el .bash_profile con la versión relevante
y finalmente
fuente
Instalar con Homebrew
La versión de Java disponible en Homebrew Cask antes del 3 de octubre de 2018 era, de hecho, la Oracle JVM. Ahora, sin embargo, ahora se ha actualizado a OpenJDK. Asegúrese de actualizar Homebrew y luego verá la última versión disponible para instalar.
1. instale Homebrew si aún no lo ha hecho. Asegúrese de que esté actualizado:
2. Agregue el toque de barriles, si aún no lo ha hecho (o si ya no ve versiones anteriores de Java con el paso 3):
3. y para las versiones de AdoptOpenJDK, agregue ese toque:
Estos barriles cambian sus versiones de Java a menudo, y puede haber otros toques con versiones adicionales de Java.
4. Busque versiones instalables:
o para las versiones de AdoptOpenJDK:
5. Verifique los detalles de la versión que se instalará:
o para la versión AdoptOpenJDK:
6. Instale una versión específica del JDK como java11, adoptopenjdk8, o simplemente java o adoptopenjdk para la actual. Por ejemplo:
También puede usar la ruta de acceso completa a versiones anteriores:
fuente
Puedes probar esto:
fuente
La manera más fácil
PS - Cask es una extensión de Homebrew que está destinada a administrar grandes binarios de Mac y aplicaciones gráficas, pero que utiliza la interfaz Homebrew. También vea esta respuesta en Apple StackExchange.
fuente
Tratar :
brew cask install java 8 ,, dará el siguiente resultado
8tracksradiohelper adoptopenjdk8 amitv87-pip corretto8 iconos8 vmware-fusion8 x48 zulu8
Luego ingrese: brew cask install adoptopenjdk8 ---- java 8 se instalará en Mac.
fuente
Sugeriría usar el SDK man que es bastante fácil de cambiar la versión (temporal y permanente) y también proporciona otros SDK. He estado usando el hombre SDK por más de un año.
https://sdkman.io/
fuente
Para la última versión de los usuarios de Intellij IDEA hay una opción para descargar JDK directamente desde el IDE: https://www.jetbrains.com/help/idea/sdk.html#jdk-from-ide
fuente
A partir del 3 de mayo de 2020, este sitio tiene un enlace de descarga para jre8u251: https://java.com/en/download/mac_download.jsp
fuente
Los siguientes pasos funcionaron para mí.
1) Desinstalar todos los jdks
En la ventana Terminal, copie y pegue el siguiente comando:
2) Instale APPLE jdk.
https://support.apple.com/kb/DL1572?locale=en_US
3) Descargue el último JDK de Oracle e instálelo, para mí fue JDK 1.82
http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html
Eso es todo, funcionará como un encanto.
fuente