web-dev-qa-db-fra.com

Comment définir Java_home sur Windows 7?

Je suis allé dans Variables d'environnement dans "Système" dans le panneau de configuration et en ai créé deux nouvelles, une pour les variables utilisateur et une pour les variables système. Les deux s'appellent Java_HOME et les deux pointant vers

C:\Sun\SDK\jdk\bin

Mais pour une raison quelconque, je reçois toujours l'erreur ci-dessous lors de l'exécution d'une commande Java ...

BUILD FAILED
C:\Users\Derek\Desktop\Eclipse\eclipse\glassfish\setup.xml:161: The following error  occurred while executing this line:
C:\Users\Derek\Desktop\Eclipse\eclipse\glassfish\setup.xml:141: The following error occurred while executing this line:
C:\Users\Derek\Desktop\Eclipse\eclipse\glassfish\setup.xml:137: Please set Java.home to a JDK installation

Total time: 1 second
C:\Users\Derek\Desktop\Eclipse\eclipse\glassfish>lib\ant\bin\ant -f setup.xml
Unable to locate tools.jar. Expected to find it in C:\Program Files\Java\jre6\lib\tools.jar
Buildfile: setup.xml

Comment puis-je résoudre ce problème?

415
Derek

Trouver le répertoire d'installation du JDK

Vous devez d’abord connaître le chemin d’installation du kit de développement Java.

Ouvrez le chemin d'installation par défaut pour le JDK:

C:\Program Files\Java

Il devrait y avoir un sous-répertoire comme:

C:\Program Files\Java\jdk1.8.0_172

Note: il suffit de mettre le chemin du jdk sans/bin à la fin (comme suggéré sur beaucoup d'endroits). par exemple. C:\Java\jdk1.8.0_172 et PAS C:\Java\jdk1.8.0_172\bin!


Définir la variable Java_HOME

Une fois que vous avez le chemin d’installation du JDK:

  1. Cliquez avec le bouton droit sur l'icône Poste de travail sur votre bureau et sélectionnez Propriétés .
  2. Cliquez sur l'onglet Avancé , puis cliquez sur le bouton Variables d'environnement .
  3. Sous variables système , cliquez sur Nouveau.
  4. Entrez le nom de la variable sous la forme Java_HOME .
  5. Entrez la valeur de la variable en tant que chemin d'installation du kit de développement Java.
  6. Cliquez sur OK.
  7. Cliquez sur Appliquer les modifications .

Remarque: Vous devrez peut-être redémarrer Windows.

L'article complet est ici, sur mon blog: Définition de la variable Java_HOME dans Windows .

665
Robs

Ce qui a fonctionné pour moi, c’est d’ajouter le %Java_HOME%\bin à la variable d’environnement Path avec la variable d’environnement Java_HOME pointant vers le dossier jdk.

154
fogedi

Vous devez d'abord Installer JDK dans votre système.

Définir Java Accueil

Java_HOME = C:\Program Files\Java\jdk1.7.0 [emplacement de votre répertoire d'installation JDK]

Une fois que vous avez le chemin d’installation du JDK:

  • Cliquez avec le bouton droit sur l'icône Poste de travail sur
  • Sélectionnez Propriétés.
  • Cliquez sur l'onglet Paramètres système avancés à gauche de votre écran.
  • Un Advance Popup est ouvert.
  • Cliquez sur le bouton Variables d'environnement.

enter image description here

  • Sous Variables système, cliquez sur Nouveau.
  • Entrez le nom de la variable sous Java_HOME.
  • Entrez la valeur de la variable en tant que chemin d'installation du kit de développement Java.
  • Cliquez sur OK.
  • Cliquez sur Appliquer les modifications.

Définir Java chemin sous variable système

CHEMIN= C:\Program Files\Java\jdk1.7.0; [Ajouter une valeur avec un point-virgule]

check here

122
Ankit jain

En cmd (temporairement pour cette fenêtre cmd):

set Java_HOME="C:\\....\Java\jdk1.x.y_zz"

echo %Java_HOME%

set PATH=%PATH%;%Java_HOME%\bin

echo %PATH%
30
sgrillon

http://javahowto.blogspot.com/2006/05/javahome-vs-javahome.html

Panneau de configuration> Java, onglet Java, cliquez sur le bouton Afficher. Dans les paramètres d'exécution, mettez:

-Djava.home=YOUR_PATH_HERE

Ou, lorsque vous exécutez Java, vous pouvez ajouter ce commutateur de ligne de commande à la commande:

Java -Djava.home=PATH SomeJavaApp
17
Ricket

Vous devez le définir sur C:\Sun\SDK\jdk (en supposant que le JDK est installé - ce n'est pas la valeur par défaut) - Ne mettez pas le\bin dans C:\Sun\SDK\jdk\bin.

Si votre application ne s'exécute que lorsque vous êtes connecté en tant qu'utilisateur actuel, placez-la dans les variables utilisateur - Si elle doit s'exécuter pour tous les utilisateurs de votre système, mettez-la dans les variables système.

Vous devrez peut-être aussi ajouter %Java_HOME%\bin au chemin également (cela dépend aussi si vous l'exécutez uniquement à partir de l'utilisateur ou de tous les utilisateurs, y compris le système).

16
Romain Hippeau

Une image peut résoudre ce problème. enter image description here

pour plus

10
KarSho

Pour ceux qui sont encore perplexes avec ce problème (j'ai essayé toutes les suggestions ci-dessus) -

Si vous utilisez une version 64 bits de Windows et que vous avez installé le JDK 32 bits, outre l'ajustement des variables PATH, vous devrez peut-être également ajuster les variables Registre.

Je me tirais les cheveux, après avoir défini correctement mes variables PATH - toujours sans succès - et alors seulement trouver les entrées "vacées" Java dans mon registre, semblant être une impasse pour réparer le "raté" Java Environnement d'exécution.

En utilisant Process Monitor pour regarder le programme que j'essayais de démarrer, afin de repérer où il se trouvait dans le registre pour rechercher Java (environnement d'exécution), j'ai triomphalement découvert qu'il cherchait la version 2 bits des entrées de registre, trouvée dans HKEY_LOCAL_MACHINE\SOFTWARE\**Wow6432Node**\JavaSoft\Java Runtime Environment.

Dans cette clé, vous devriez trouver des sous-clés de différentes versions de Java installées (passées et/ou présentes). Cliquez sur la sous-clé de la dernière version (ma sous-clé est actuellement 1.7.0_25, par exemple). Après avoir cliqué sur cette sous-clé, vous verrez les valeurs de chaîne de registre listées à droite, et en particulier JavaHome et RuntimeLib. Vous devez modifier les valeurs de ces deux valeurs afin de refléter le dossier actuel et le fichier jvm.dll, respectivement.

Par exemple, dans mon cas, les valeurs étaient (précédemment) respectivement définies sur C:\Program Files (x86)\Java\jre7 et C:\Program Files (x86)\Java\jre7\bin\client\jvm.dll, qui n'existent pas sur ma machine. Je devais les mettre à jour dans le dossier et le fichier en cours de C:\Program Files (x86)\Java\jdk1.7.0_25\jre et C:\Program Files (x86)\Java\jdk1.7.0_25\jre\bin\client\jvm.dll.

Là encore, cela dépendra entièrement de la version de Java (JDK et/ou JRE) que vous avez installée (32 ou 64 bits) et du type de système d'exploitation utilisé, 32 ou 64 bits. Sachez simplement qu'ils se reflètent à différents emplacements dans le registre (comme le Wow6432Node pour les applications 32 bits, dans mon cas, avec le JDK 32 bits installé sur un ordinateur 64 bits).

Maintenant que j'ai mis à jour ces deux valeurs de registre, mon programme fonctionne parfaitement, sans aucun hoquet ni réclamation concernant un environnement d'exécution manquant Java (issu du registre).

7
Coldblackice

Ceci est la solution officielle pour configurer l'environnement Java à partir de www.Java.com - ici .

Il existe des solutions pour Windows 7, Windows Vista, Windows XP, Linux/Solaris et d'autres shells.


Exemple

Windows 7

  1. Sélectionnez Ordinateur dans le menu Démarrer.
  2. Choisissez Propriétés du système dans le menu contextuel.
  3. Cliquez sur Paramètres système avancés -> onglet Avancé
  4. Cliquez sur Variables d'environnement, sous Variables système, recherchez PATH, puis cliquez dessus.
  5. Dans les fenêtres d'édition, modifiez PATH en ajoutant l'emplacement de la classe à la valeur de PATH. Si vous ne disposez pas de l'élément PATH, vous pouvez choisir d'ajouter une nouvelle variable et d'ajouter PATH comme nom et l'emplacement de la classe comme valeur.
  6. Rouvrez la fenêtre d'invite de commande et exécutez votre code Java.
7
HATCHA

Windows 7

  1. Accédez à Panneau de configuration\Tous les éléments du panneau de configuration\Comptes d'utilisateurs à l'aide de l'Explorateur (et non d'Internet Explorer!).

    ou

    • cliquez sur le bouton Démarrer

      start

    • cliquez sur votre image

      clickOnPhoto

  2. Changer mes variables d'environnement

    Change my environment variables

  3. Nouveau ...

    new

    (si vous ne disposez pas des autorisations suffisantes pour l'ajouter dans la section Variables système, ajoutez-le à la section Variables utilisateur)

  4. Ajoutez Java_HOME en tant que nom de variable et l'emplacement du JDK en tant que valeur de variable> OK

    edit system variable ok

Test:

  • ouvrir une nouvelle console (cmd)
  • tapez set Java_HOME
    • résultat attendu: Java_HOME=C:\Program Files\Java\jdk1.8.0_60
6
ROMANIA_engineer

goto Mycomputer (Ce PC) -> rightclick -> sélectionner les propriétés -> Paramètres système avancés -> variables d’environnement-> dans variables système cliquez sur le bouton "Nouvea" et écrivez - Java_HOME dans nom de variable et le chemin C:\Program Files\Java\jdk1.8.0_131 où jdk est présent dans la variable value-> cliquez sur ok.

fermez et rouvrez la commande Invite après avoir défini Java_HOME. Parfois, les modifications ne reflètent pas la cmd ouverte avant la configuration de Java_HOME.

vous pouvez également définir Java_HOME via le terminal lui-même: SET Java_HOME = "C:\Fichiers de programme (x86)\Java\jdk1.8.0_131"

5
Shreya Sharma

Nous devons faire une distinction entre les deux variables d’environnement discutées ici de manière interchangeable. L'un est la variable Java_HOME. L'autre est la variable Path. Tout processus faisant référence à la variable Java_HOME recherche le chemin de recherche du JDK, pas le JRE. L'utilisation de la variable Java_HOME n'est pas destinée au compilateur Java. Le compilateur est conscient de son propre emplacement. La variable est destinée à un autre logiciel pour localiser plus facilement le compilateur. Cette variable est généralement utilisée par le logiciel IDE afin de compiler et de construire des applications à partir du code source Java. En revanche, l'interpréteur Windows CMD et de nombreux autres logiciels, qu'ils soient propriétaires ou non, font référence à la variable Path, pas à la variable Java_HOME.

Cas d'utilisation 1: compilation à partir de CMD

Ainsi, par exemple, si vous n'utilisez aucun logiciel IDE et que vous souhaitez simplement pouvoir compiler à partir du CMD, indépendamment de votre répertoire de travail actuel, vous souhaitez définir correctement la variable Path. . Dans votre cas, vous n'avez même pas besoin de la variable Java_HOME. Parce que CMD utilise Path, pas Java_HOME pour localiser le compilateur Java.

Cas d'utilisation 2: compilation à partir de l'IDE

Cependant, si vous utilisez un logiciel IDE, vous devez tout d'abord consulter la documentation. Il peut être nécessaire de définir Java_HOME, mais un autre nom de variable peut également être utilisé dans le même but. La norme de facto au fil des ans a été Java_HOME, mais cela n’est peut-être pas toujours le cas.

Cas d'utilisation 3: compilation à partir de IDE et de CMD

Si, outre le logiciel IDE, vous souhaitez également pouvoir compiler à partir du CMD, indépendamment de votre répertoire de travail actuel, ajoutez () à la variable Java_HOME, vous devrez peut-être également ajouter le chemin de recherche JDK à la variable Path.

Java_HOME vs. Path

Si votre problème concerne la compilation de Java, vous souhaitez vérifier la variable Java_HOME et le chemin (le cas échéant). Si votre problème concerne l'exécution d'applications Java, vous souhaitez vérifier votre variable Path.

La variable de chemin est utilisée universellement sur tous les systèmes d'exploitation. Comme il est défini par le système et que c'est la variable par défaut utilisée pour localiser le JRE, il n'y a presque jamais de problème pour exécuter les applications Java. Surtout pas sous Windows, où les installateurs de logiciels mettent tout en place pour vous. Mais si vous installez manuellement, la solution la plus sûre consiste peut-être à ignorer la variable Java_HOME et à utiliser la variable Path pour tout, à la fois pour JDK et JRE. Toute version récente d'un logiciel IDE devrait être capable de la récupérer et de l'utiliser.

Liens symboliques

Les liens symboliques peuvent fournir un autre moyen de référencer le chemin de recherche du JDK en combinant l'une des variables d'environnement existantes.

Je ne suis pas sûr des versions précédentes des versions JDK/JRE d’Oracle/Sun, mais au moins le programme d’installation de jdk1.8.0_74 ajoute le chemin de recherche C:\ProgramData\Oracle\Java\javapath à la variable Path, et il le met au début de la valeur de la chaîne. Ce répertoire contient des liens symboliques vers Java.exe, javaw.exe et javaws.exe dans le répertoire JRE.

Donc, au moins avec le JDK Java 8, et vraisemblablement le JRE Java 8 autonome, aucune configuration de variable d'environnement ne doit être effectuée pour le JRE. Tant que vous utilisez le package d'installation pour le configurer. Cependant, il peut y avoir des différences sur votre installation Windows. Notez que le JRE Oracle est fourni avec le JDK.

Si vous constatez que votre configuration JDK Java utilise la mauvaise version du compilateur, ou si elle semble fonctionner par magie, sans être explicitement définie ainsi (sans lancer de sort), vous risquez alors de lien symbolique quelque part dans vos variables d'environnement. Donc, vous voudrez peut-être vérifier le lien symbolique.

5
Samir

Lorsque vous ajoutez votre répertoire Java à votre variable PATH, vous souhaiterez peut-être le mettre au début. Le problème, c'est que placer le répertoire Java à la fin du fichier PATH ne fonctionnerait pas. Après vérification, j'ai trouvé Java.exe dans mon répertoire Windows\System32 et il semble que le premier gagne, lorsqu'il y a plusieurs fichiers du même nom dans votre PATH...

4
user2414128

Dans Eclipse: Window->Preferences->Java->Installed JREs

Utilisez la fonction de recherche pour vous assurer que votre dernière installation Java est répertoriée. puis assurez-vous que c'est celui qui est coché. Cela devrait être un JDK, pas un JRE.

4
Berg

Exécutez Eclipse en tant qu'administrateur.

Cela a résolu mon problème. Je cherche encore la logique derrière tout ça.

3
muscailie

si vous n'avez pas redémarré votre ordinateur après l'installation de jdk, redémarrez-le.

si vous voulez faire un portable Java et définir le chemin avant d'utiliser Java, créez simplement un lot fichier j'ai expliqué ci-dessous.

si vous souhaitez exécuter ce fichier de commandes au démarrage de votre ordinateur, il suffit de placer votre raccourci de fichier de commandes dans le dossier de démarrage. Le dossier de démarrage de Windows 7 est "C:\Utilisateurs\utilisateur\AppData\Roaming\Microsoft\Windows\Menu Démarrer\Programmes\Démarrage"

faire un fichier batch comme ceci:

set Java_Home=C:\Program Files\Java\jdk1.8.0_11
set PATH=%PATH%;C:\Program Files\Java\jdk1.8.0_11\bin

remarque: Java_home et path sont des variables. vous pouvez créer n'importe quelle variable à votre guise. par exemple set amir=good_boy et vous pouvez voir amir par %amir% ou vous pouvez voir Java_home par %Java_home%

2
Amir

Après des heures de travail autour de la plupart des solutions ici, le problème a été résolu pour moi simplement en installant JDK 32 bits.

0
Vahid Ghadiri

Vous voudrez peut-être consulter le dossier Windows/System32 pour rechercher les fichiers suivants: - Java.exe - javaw.exe - javaws.exe

Parce que la variable path contient ces fichiers, vous pouvez avoir mal à la tête en essayant de comprendre pourquoi la version Java ou javac -version ne cesse de pointer vers l'ancien Java_HOME: renommez ces fichiers, supprimez l'extension avec un trait de soulignement, par exemple. Ensuite, il vous suffira de créer la variable Java_HOME, de l'ajouter à la variable de chemin d'accès (par exemple,% Java_HOME%) et d'ajouter la particule "\ bin". Ainsi, vous ne devez modifier que la variable Java_HOME pointant vers un JRE ou un JDK différent et disposer de plusieurs installations de Java simplement en définissant Java_HOME.

Cela signifie également qu'il est préférable d'installer Java manuellement, sans programme d'installation, pour pouvoir jouer avec.

0
Camilo