Comment installer OpenJDK 11 sur Windows?

269

Dans le passé, Oracle publiait un programme d'installation exécutable pour Windows qui:

  • Décompressez les fichiers
  • Ajouter des clés de registre indiquant la version installée et le chemin
  • Ajoutez le JRE au système PATH
  • Enregistrez un programme de désinstallation avec Windows.

Depuis Java 11, la version gratuite d' Oracle de Java ( Oracle OpenJDK ) ne semble pas inclure de programme d'installation. Il s'agit simplement d'un fichier zip contenant les fichiers binaires.

Comment sommes-nous censés installer OpenJDK 11 sur Windows étant donné que les intégrations susmentionnées ne sont plus là? Ne sont-ils pas nécessaires?

Gili
la source
1
Changer le registre n'a jamais été réellement nécessaire. Et lorsque vous ne manipulez pas le système, vous n'avez pas non plus besoin d'un programme de désinstallation.
Holger
1
@Gili utilisant la variable d'environnement JAVA_HOME ou via un chemin direct dans la configuration comme IntelliJ IDEa le fait?
Mikhail Kholodkov
13
Il existe un projet communautaire ojdkbuild qui fournit des programmes d'installation Windows pour OpenJDK. JDK 11 n'est pas encore disponible là-bas mais j'espère que nous l'obtiendrons bientôt.
ZhekaKozlov
1
@Gili wiki.eclipse.org/FAQ_How_do_I_run_Eclipse%3F#Find_the_JVM notez comment le registre n'apparaît nulle part…
Holger
1
@Robert bien, sans plugin de navigateur, panneau de configuration, outil de mise à jour automatique, ni crapware de barre d'outils ask, il ne reste plus tant à installer.
Holger

Réponses:

339
  1. Extrayez le fichier zip dans un dossier, par exemple C:\Program Files\Java\et il créera un jdk-11dossier (où le dossier bin est un sous-dossier direct). Vous pouvez avoir besoin des privilèges d'administrateur pour extraire le fichier zip à cet emplacement.

  2. Définissez un CHEMIN:

    • Sélectionnez Panneau de configuration puis Système.
    • Cliquez sur Avancé puis sur Variables d'environnement.
    • Ajoutez l'emplacement du dossier bin de l'installation JDK à la variable PATH dans Variables système.
    • Voici une valeur typique pour la variable PATH: C:\WINDOWS\system32;C:\WINDOWS;"C:\Program Files\Java\jdk-11\bin"
  3. Définissez JAVA_HOME:

    • Sous Variables système, cliquez sur Nouveau.
    • Entrez le nom de la variable comme JAVA_HOME.
    • Entrez la valeur de la variable comme chemin d'installation du JDK (sans le binsous-dossier).
    • Cliquez sur OK.
    • Cliquez sur Appliquer les modifications.
  4. Configurez le JDK dans votre IDE (par exemple IntelliJ ou Eclipse).

Tu es prêt.

Pour voir si cela a fonctionné, ouvrez l'invite de commande et tapez java -versionet voyez s'il imprime votre JDK nouvellement installé.

Si vous souhaitez désinstaller - annulez simplement les étapes ci-dessus.

Remarque: vous pouvez également pointer JAVA_HOMEvers le dossier de vos installations JDK, puis définir la PATHvariable sur %JAVA_HOME%\bin. Ainsi, lorsque vous souhaitez modifier le JDK, vous ne modifiez que la JAVA_HOMEvariable et laissez-la PATHtelle quelle.

Lior Bar-On
la source
9
N'oubliez pas les entrées de registre, qui sont par exemple utilisées par Launch4j pour trouver jre / jdk installé.
Robert
2
@Lior: Ce n'est qu'un programme que je connais qui utilise les entrées de registre. Il peut y avoir des dizaines ou des centaines d'autres programmes utilisant ces entrées de registre également.
Robert
4
Il peut en être ainsi, mais: a. J'ai travaillé avec Java depuis la version 1.1 sans configurer le registre - ce n'est donc pas un must. b: le registre Windows est généralement considéré comme un mécanisme à éviter (par exemple blog.codinghorror.com/was-the-windows-registry-a-good-idea ) - donc je ne pense pas qu'il devrait être utilisé, sinon spécifiquement nécessaire. Par exemple - une erreur de définition d'une valeur peut entraîner une erreur difficile à récupérer.
Lior Bar-On,
25
> Vous pouvez pointer JAVA_HOME vers le dossier où vous avez plusieurs installations JDK . C'est complètement faux. De nombreux programmes et scripts supposent que JAVA_HOME pointe vers l'installation java par défaut (jdk ou jre) et ils recherchent des fichiers binaires sous "% JAVA_HOME% \ bin". Donc, vous NE POUVEZ PAS pointer JAVA_HOME vers un dossier avec plusieurs installations jdk. Au lieu de cela, vous pouvez ajouter à Path la valeur "% JAVA_HOME% \ bin;" puis (lorsque le nouveau JDK est installé), vous pouvez mettre à jour JAVA_HOME uniquement
kool79
2
@sarkasronie Voir le code source launch4j: sourceforge.net/p/launch4j/git/ci/Release_launch4j-3_12/tree/… (sous HKEY_LOCAL_MACHINE)
Robert
142

AdoptOpenJDK est un nouveau site Web hébergé par la communauté java . Vous pouvez y trouver des installateurs .msi pour OpenJDK 8 à 14, qui effectueront toutes les choses répertoriées dans la question (déballage, clés de registre, mise à jour des variables PATH (et JAVA_HOME), programme de désinstallation ...).

Pimgd
la source
5
Bien que la réponse acceptée soit correcte, il s'agit d'un moyen beaucoup plus pratique d'installer n'importe quelle version du JDK / JRE
optevo
21

D'après le commentaire de @ZhekaKozlov: ojdkbuild a des versions OpenJDK (actuellement 8 et 11) pour Windows ( zipet msi).

Martin Schröder
la source
3
Pour moi, ces versions n'ont pas correctement défini les variables PATH. Au bail, je ne peux pas émettre java -versionet obtenir la sortie souhaitée.
hannes101
1
Je ne trouve pas OpenJDK msi. Je vais faire un script et le partager dans une réponse plus tard dans la journée qui extrait et définit PATH et JAVA_HOME pour la machine.
vezenkov
1
@vezenkov: Mettez à jour la réponse ici (c'est le wiki de la communauté pour une raison) et / ou ouvrez un problème avec le projet, s'il vous plaît.
Martin Schröder
Pour ajouter à la réponse acceptée si vous effectuez une mise à niveau à partir d'une version précédente, j'ai même dû redémarrer le serveur pour voir la version openjdk mise à jour sur la ligne de commande.
desiguy
21

Utilisez le gestionnaire de paquets Chocolatey . Il s'agit d'un outil en ligne de commande similaire à npm. Une fois que vous l'avez installé, utilisez

choco install openjdk

dans une invite de commande élevée pour installer OpenJDK.

Pour mettre à jour une version installée vers la dernière version, tapez

choco upgrade openjdk

Assez simple à utiliser et particulièrement utile pour passer à la dernière version. Pas de manipulation manuelle des variables d'environnement de chemin.

Tobias
la source
3
Notez que cela installerait la dernière version: openjdk-12.0.2_windows-x64
Vadzim
dans le cas où d'autres versions de java sont installées, vous pouvez vérifier les variables de chemin et supprimer / modifier les anciennes.
Ketu
1
@Vadzim choco installe openjdk11 à ce jour sans mentionner la version, il installe openjdk-13 et juste pour noter, il utilisera AdoptOpenJDK comme dans les autres réponses
FIV
1

Vous pouvez utiliser Amazon Corretto . Il est gratuit d'utiliser la distribution multiplateforme et prête pour la production d'OpenJDK. Il est livré avec un support à long terme qui comprendra des améliorations de performances et des correctifs de sécurité. Consultez les instructions d'installation ici .

Vous pouvez également vérifier le zoulou d' Azul .

Une autre chose que j'aime souligner ici est qu'Amazon Corretto et Zulu sont conformes à TCK. Vous pouvez voir la comparaison des versions d'OpenJDK ici et ici .

Swapnil
la source
-3

Le programme de désinstallation Oracle Java ne supprime pas tous les fichiers.
Vérifiez si "C: \ ProgramData \ Oracle" existe, il y a des fichiers java dans le sous-répertoire. (ex: java.exe, javaw.exe)
Supprimez-le pour éviter d'exécuter de mauvais fichiers java.

craftwar
la source