¿Cómo instalar OpenJDK 11 en Windows?

269

En el pasado, Oracle solía publicar un instalador ejecutable para Windows que:

  • Descomprimir archivos
  • Agregue claves de registro que indiquen la versión instalada y la ruta
  • Agregue el JRE a la RUTA del sistema
  • Registre un desinstalador con Windows.

A partir de Java 11, la versión gratuita de Oracle de Java ( Oracle OpenJDK ) no parece incluir un instalador. Es solo un archivo zip que contiene los binarios.

¿Cómo se supone que instalemos OpenJDK 11 en Windows ya que las integraciones mencionadas ya no existen? ¿No son necesarios?

Gili
fuente
1
Cambiar el registro nunca fue realmente necesario. Y cuando no está manipulando el sistema, tampoco necesita un desinstalador.
Holger
1
@Gili usando la variable de entorno JAVA_HOME o a través de la ruta directa en la configuración, como lo hace IntelliJ IDEa?
Mikhail Kholodkov
13
Hay un proyecto comunitario ojdkbuild que proporciona instaladores de Windows para OpenJDK. JDK 11 aún no está disponible allí, pero espero que lo obtengamos pronto.
ZhekaKozlov
1
@Gili wiki.eclipse.org/FAQ_How_do_I_run_Eclipse%3F#Find_the_JVM observe cómo el registro no aparece en ningún lado ...
Holger
1
@Robert bien, sin un complemento de navegador, panel de control, herramienta de actualización automática, ni el crapware ask toolbar, no queda mucho para instalar.
Holger

Respuestas:

339
  1. Extraiga el archivo zip en una carpeta, por ejemplo, C:\Program Files\Java\y creará una jdk-11carpeta (donde la carpeta bin es una subcarpeta directa). Es posible que necesite privilegios de administrador para extraer el archivo zip en esta ubicación.

  2. Establecer un camino:

    • Seleccione Panel de control y luego Sistema.
    • Haga clic en Avanzado y luego en Variables de entorno.
    • Agregue la ubicación de la carpeta bin de la instalación de JDK a la variable PATH en Variables del sistema.
    • El siguiente es un valor típico para la variable PATH: C:\WINDOWS\system32;C:\WINDOWS;"C:\Program Files\Java\jdk-11\bin"
  3. Establecer JAVA_HOME:

    • En Variables del sistema, haga clic en Nuevo.
    • Ingrese el nombre de la variable como JAVA_HOME.
    • Ingrese el valor de la variable como la ruta de instalación del JDK (sin la binsubcarpeta).
    • Haga clic en Aceptar.
    • Haz clic en Aplicar cambios.
  4. Configure el JDK en su IDE (por ejemplo, IntelliJ o Eclipse).

Estás listo

Para ver si funcionó, abra el símbolo del sistema y escriba java -versiony vea si imprime su JDK recién instalado.

Si desea desinstalar, simplemente deshaga los pasos anteriores.

Nota: También puede apuntar JAVA_HOMEa la carpeta de sus instalaciones JDK y luego establecer la PATHvariable en %JAVA_HOME%\bin. Entonces, cuando desea cambiar el JDK, solo cambia la JAVA_HOMEvariable y se deja PATHcomo está.

Lior Bar-On
fuente
9
No olvide las entradas del registro, que son utilizadas, por ejemplo, por Launch4j para encontrar jre / jdk instalado.
Robert
2
@Lior: este es solo un programa que conozco que usa las entradas del registro. Puede haber docenas o cientos de otros programas que también usan estas entradas de registro.
Robert
44
Puede ser así, pero: a. Trabajé con Java desde la versión 1.1 sin configurar el registro, por lo que no es obligatorio. b: el registro de Windows se considera comúnmente como un mecanismo para evitar (por ejemplo, blog.codinghorror.com/was-the-windows-registry-a-good-idea ), por lo tanto, no creo que deba usarse, si no específicamente necesario. por ejemplo, un error al establecer un valor en él puede conducir a un error difícil de recuperar.
Lior Bar-On
25
> Puede apuntar JAVA_HOME a la carpeta donde tiene múltiples instalaciones JDK . Esto está completamente mal. Muchos programas y scripts suponen que JAVA_HOME apunta a la instalación predeterminada de Java (jdk o jre) y buscan binarios en "% JAVA_HOME% \ bin". Por lo tanto, NO PUEDE apuntar JAVA_HOME a una carpeta con múltiples instalaciones jdk. En su lugar, puede agregar a Path el valor "% JAVA_HOME% \ bin;" y luego (cuando se instala un nuevo JDK) solo puede actualizar JAVA_HOME
kool79
2
@sarkasronie Consulte el código fuente de launch4j: sourceforge.net/p/launch4j/git/ci/Release_launch4j-3_12/tree/… (bajo HKEY_LOCAL_MACHINE)
Robert
142

AdoptOpenJDK es un nuevo sitio web alojado por la comunidad de Java . Puede encontrar instaladores .msi para OpenJDK 8 a 14 allí, que realizarán todas las cosas enumeradas en la pregunta (Desembalaje, claves de registro, actualización de la variable PATH (y JAVA_HOME), desinstalador ...).

Pimgd
fuente
55
Aunque la respuesta aceptada es correcta, esta es una manera mucho más conveniente para instalar cualquier versión de JDK / JRE
optevo
21

Del comentario de @ZhekaKozlov: ojdkbuild tiene compilaciones OpenJDK (actualmente 8 y 11) para Windows ( zipy msi).

Martin Schröder
fuente
3
Para mí, esas compilaciones no establecieron las variables PATH correctamente. Al arrendamiento no puedo emitir java -versiony obtener la salida deseada.
hannes101
1
No puedo encontrar OpenJDK msi. Haré un script y lo compartiré en una respuesta más tarde hoy que extrae y establece PATH y JAVA_HOME para la máquina.
vezenkov
1
@vezenkov: Actualice la respuesta aquí (es el wiki de la comunidad por alguna razón) y / o abra un problema con el proyecto, por favor.
Martin Schröder
Para agregar a la respuesta aceptada si estaba actualizando desde una versión anterior, incluso tuve que reiniciar el servidor para ver la versión de openjdk actualizada en la línea de comandos.
desiguy
21

Usa el administrador de paquetes de Chocolatey . Es una herramienta de línea de comandos similar a npm. Una vez que lo haya instalado, use

choco install openjdk

en un símbolo del sistema elevado para instalar OpenJDK.

Para actualizar una versión instalada a la última versión, escriba

choco upgrade openjdk

Bastante simple de usar y especialmente útil para actualizar a la última versión. Sin manipulaciones manuales con variables de entorno de ruta.

Tobias
fuente
3
Tenga en cuenta que esto instalaría la última versión: openjdk-12.0.2_windows-x64
Vadzim
en caso de que tenga otras versiones de java instaladas, es posible que desee verificar las variables de ruta y eliminar / modificar la antigua.
Ketu
1
@Vadzim choco instala openjdk11 a partir de hoy sin mencionar la versión, instala openjdk-13 y solo para tener en cuenta, usará el AdoptOpenJDK como en otras respuestas
FIV
1

Puedes usar Amazon Corretto . Es gratis usar multiplataforma, distribución lista para producción de OpenJDK. Viene con soporte a largo plazo que incluirá mejoras de rendimiento y correcciones de seguridad. Consulte las instrucciones de instalación aquí .

También puedes consultar Zulu desde Azul .

Una cosa más que me gustaría destacar aquí es que tanto Amazon Corretto como Zulu cumplen con TCK. Puede ver la comparación de compilaciones de OpenJDK aquí y aquí .

Swapnil
fuente
-3

El desinstalador de Oracle Java no elimina todos los archivos.
Compruebe si existe "C: \ ProgramData \ Oracle", hay algunos archivos java en el subdirectorio. (ej: java.exe, javaw.exe) Elimínelo
para evitar la ejecución de archivos java incorrectos.

Craftwar
fuente