Variables d'environnement pour l'installation java

205

Comment définir les variables d'environnement pour Java dans Windows (le chemin de classe)?

Dean Jones
la source
2
Quelles variables d'environnement? Le chemin de classe et JAVA_HOME? Quelle plateforme (Linux / Windows)? Veuillez élaborer
Wernsey
22
Je suis seul à penser que c'est trop boiteux que l'installateur java ne mette pas à jour automatiquement la variable d'environnement path?
Thomas Eyde
2
@ThomasEyde - le seul problème avec cette idée est que si je veux plusieurs JVM sur ma machine - la définition automatique du chemin entraînerait alors des problèmes.
Richard Le Mesurier
3
@Richard Le Mesurier: Il suffit d'avoir une case à cocher "définir comme nouvelle machine
virtuelle Java
commentant pour référence
Asker123

Réponses:

395

Kit de développement Java SE 8u112 sur Windows 7 ou Windows 8 64 bits

Définissez les variables d'environnement utilisateur suivantes (== variables d'environnement de type variables utilisateur )

  • JAVA_HOME : C:\Program Files\Java\jdk1.8.0_112
  • JDK_HOME : %JAVA_HOME%
  • JRE_HOME : %JAVA_HOME%\jre
  • CLASSPATH : .;%JAVA_HOME%\lib;%JAVA_HOME%\jre\lib
  • PATH : your-unique-entries;%JAVA_HOME%\bin(assurez-vous que le longish your-unique-entriesne contient aucune autre référence à un autre dossier d'installation Java.

Remarque pour les utilisateurs de Windows sur les systèmes 64 bits:

Progra~1 = 'Program Files'
Progra~2 = 'Program Files(x86)'

Notez que ces variables d'environnement sont dérivées de la variable d'environnement "racine" JAVA_HOME. Cela facilite la mise à jour de vos variables d'environnement lors de la mise à jour du JDK. Indiquez simplement JAVA_HOMEla nouvelle installation.

Un article de blog explique la raison d'être de toutes ces variables d'environnement .

Recommandations facultatives

  • Ajoutez une variable d'environnement utilisateur JAVA_TOOL_OPTIONS avec une valeur -Dfile.encoding="UTF-8". Cela garantit que Java (et des outils tels que Maven ) fonctionneront avec un Charset.defaultCharset()de UTF-8(au lieu de la valeur par défaut Windows-1252). Cela a permis d'économiser beaucoup de maux de tête lors de la connexion avec mon propre code et celui des autres, qui supposent malheureusement souvent le codage par défaut (sain) UTF-8 .
  • Lorsque JDK est installé, il ajoute à la variable d'environnement système Path une entrée C:\ProgramData\Oracle\Java\javapath;. J'ai remarqué de façon anecdotique que les liens dans ce répertoire n'ont pas été mis à jour lors d'une mise à jour de l'installation JDK. Il est donc préférable de supprimer C:\ProgramData\Oracle\Java\javapath;de la Pathvariable d'environnement système afin d'avoir un environnement cohérent.
Abdull
la source
12
C'est la meilleure réponse
Kimchi Man
1
Bonne réponse. Je fais également une jonction de répertoire à mon installation java que je peux mettre à jour chaque fois que j'installe une nouvelle version ( mklink /j C:\devel\java8 "C:\Program Files\Java\jdk1.8.0_91"). De cette façon, lorsque j'utilise cygwin ou quelque chose qui ne peut pas lire les variables env de Windows, j'ai toujours un moyen rapide d'échanger des versions. Et il est beaucoup plus facile de se souvenir du chemin le plus court sans la version mineure.
kghastie du
J'ai essayé de définir une variable JAVA_ROOT_PATH mais JAVA_HOME ne semblait pas aimer que j'utilise une variable d'environnement pour sa valeur. Y a-t-il une raison à cela?
Eric
3
Le javapathrépertoire et les liens symboliques sont créés par l'installation de JRE (qui est un processus facultatif lors de l'installation du JDK), donc si vous n'avez pas installé le JRE, vous n'auriez pas créé javapath. Notez que le %JAVA_HOME%\jredans votre réponse est le JRE privé du JDK destiné à l'utilisation du compilateur Java. Ce n'est pas exactement la même chose que le JRE public. Notez également qu'à partir de la version 1.8u112, l'installation de JRE semble avoir cessé de créer des liens symboliques dans javapathet crée des liens durs vers .exes dans ..\javapath_target_nnnnnnn\*.exe.
Klitos Kyriacou
3
Le cadre me convient bien. Comme il n'y a pas de dossier jre sur jdk 11, je supprime la variable JRE_HOME ainsi que la valeur% JAVA_HOME% \ jre \ lib dans la variable CLASSPATH. Pour plus d'informations sur jdk 11 sans jre: stackoverflow.com/questions/52584888/…
Huanfa Chen
66

Dans Windows pour définir

Étape 1: Faites un clic droit sur MyComputer et cliquez sur les propriétés.

Étape 2: cliquez sur l'onglet Avancé

texte alternatif

Étape 3: cliquez sur Variables d'environnement

texte alternatif

Étape 4: créer un nouveau chemin de classe pour JAVA_HOME

texte alternatif

Étape 5: Entrez le nom de la variable comme JAVA_HOME et la valeur de votre chemin bin jdk, c'est-à-dire c: \ Programfiles \ Java \ jdk-1.6 \ bin et

REMARQUE Assurez-vous que vous commencez par .;dans la valeur afin qu'il ne corrompe pas les autres variables d'environnement qui sont déjà définies.

texte alternatif

Étape 6 : Suivez l'étape ci-dessus et modifiez le chemin dans les variables système, ajoutez ce qui suit ;c:\Programfiles\Java\jdk-1.6\bindans la colonne de valeur.

Étape 7 : Vous avez terminé de configurer vos variables d'environnement pour votre Java. Pour le tester, allez à l'invite de commande et tapez

 java   

qui obtiendra une liste de documents d'aide

Pour vous assurer que le compilateur est configuré, tapez cmd

  javac

qui obtiendra une liste relative à javac

J'espère que cela t'aides !

Srinivas MV
la source
1
Belle explication. Une petite chose à l'étape 6: ne tapez pas $javaou $javac, mais juste javaou javac.
Jesper
1
Et notez que vous devez ajouter le répertoire bin JDK à la PATHvariable d'environnement; le réglage JAVA_HOMEn'est pas suffisant.
Jesper
1
ouais désolé depuis que je suis un amoureux de Linux. j'ai raté ça va le changer, merci
Srinivas MV
3
1. utilisez des barres obliques inverses dans WINDOWS 2. ne démarrez aucun chemin avec ".;" 3. ajoutez% JAVA_HOME% \ bin au chemin, comme ça vous pourrez plus tard changer le java_home sans avoir à changer le chemin
raudi
1
@Wannacoffee Mise à jour des changements pour les contre
Srinivas MV
27

--- Pour définir le chemin java ---

Il existe deux façons de définir le chemin java

Un temporaire

  1. Ouvrir cmd
  2. Écrivez en cmd: javac

Si java n'est pas installé, vous verrez un message:

javac n'est pas reconnu comme une commande interne ou externe, un programme exploitable ou un fichier de commandes .

  1. Écrivez en cmd: set path=C:\Program Files\Java\jdk1.8.0_121\bin
  2. Écrivez en cmd: javac

Vous pouvez vérifier que le chemin est défini si aucune erreur n'a été déclenchée.

Il est important de noter que ces modifications ne sont que temporaires à partir des programmes lancés à partir de cette cmd.

REMARQUE: vous devrez peut-être exécuter la ligne de commande en tant qu'administrateur

B. Permanent

  1. Faites un clic droit sur "Mon ordinateur" et cliquez sur les propriétés
  2. Cliquez sur "Paramètres système avancés"
  3. Cliquez sur "Variables d'environnement"
  4. Cliquez sur le nouvel onglet de la variable utilisateur
  5. Ecrire pathdansvariable name
  6. Copiez le chemin du dossier bin
  7. Collez le chemin du dossier bin dans levariable value
  8. Cliquez OK

Le chemin est désormais défini de façon permanente.

CONSEIL: L'outil "Rapid Environment Editor" (freeware) est idéal pour modifier les variables d'environnement et utile dans ce cas

CONSEIL2: Il existe également un moyen plus rapide d'accéder aux variables d'environnement: appuyez sur les touches Win+ R, collez ce qui suit %windir%\System32\rundll32.exe sysdm.cpl,EditEnvironmentVariableset appuyez surENTER

Kimmi Dhingra
la source
17

Sous Windows 7, cliquez avec le bouton droit sur Ordinateur -> Propriétés -> Paramètres système avancés ; puis dans l' avancée onglet, cliquez sur Variables d' environnement ... -> Variables système -> Nouveau ... .

Donnez à la nouvelle variable système le nom JAVA_HOMEet la valeur C:\Program Files\Java\jdk1.7.0_79(en fonction de votre chemin d'installation JDK, elle varie).

Sélectionnez ensuite la Pathvariable système et cliquez sur Modifier ... . Conservez le nom de variable as Pathet ajoutez C:\Program Files\Java\jdk1.7.0_79\bin;ou %JAVA_HOME%\bin;(les deux signifient la même chose) à la valeur de la variable.

Une fois que vous avez terminé les modifications ci-dessus, essayez les étapes ci-dessous. Si vous ne voyez pas de résultats similaires, redémarrez l'ordinateur et réessayez. Si cela ne fonctionne toujours pas, vous devrez peut-être réinstaller JDK.

Ouvrez une invite de commande Windows (touche Windows + R-> entrez cmd-> OK ) et vérifiez les points suivants:

java -version

Vous verrez quelque chose comme ceci:

java version "1.7.0_79"
Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)

Vérifiez ensuite les points suivants:

javac -version

Vous verrez quelque chose comme ceci:

javac 1.7.0_79
Arun
la source
14

Les instructions d'installation de JDK expliquent exactement comment définir le PATH, pour différentes versions de Windows.

Normalement, vous ne devez pas définir la CLASSPATHvariable d'environnement. Si vous ne le laissez pas défini, Java cherchera dans le répertoire courant pour trouver les classes. Vous pouvez utiliser le -cpou -classpathcommutateur de ligne de commande avec javaou javac.

Jesper
la source
4
+1 pour "Normalement, vous ne devez pas définir la variable d'environnement CLASSPATH.".
BalusC
5

Je vais expliquer ici par des images pour Windows 7.

Veuillez suivre les étapes suivantes:

Étape 1: Allez dans "Démarrer" et accédez aux propriétés "Poste de travail"

entrez la description de l'image ici

Étape 2: Allez dans "Paramètres système avancés" et cliquez dessus.

entrez la description de l'image ici

Étape 3: Allez dans "Démarrer" et accédez aux propriétés "Poste de travail"

entrez la description de l'image ici

Étape 4: La boîte de dialogue pour la variable d'environnement s'ouvrira comme ceci:

entrez la description de l'image ici

Étape 5: Accédez au chemin et cliquez sur modifier.

entrez la description de l'image ici

Étape 6: placez le chemin de votre JDK où qu'il se trouve dans le bac comme vous pouvez le voir sur l'image. Ajoutez également le chemin depuis votre SDK d'Android jusqu'aux outils de la plateforme:

entrez la description de l'image ici

hitesh141
la source
3

Dans le contexte de programmation, vous pouvez exécuter la commande SET (SET classpath = c: \ java) ou un clic droit sur votre ordinateur> propriétés> avancées> variables d'environnement.

Dans un fichier batch, vous pouvez utiliser

SET classpath=c:\java
java c:\myapplication.class
Cem Kalyoncu
la source
Impossible de comprendre la deuxième ligne. Qu'est-ce que ça veut dire?
St.Shadow
3

Pour les utilisateurs de Windows 7:

Cliquez avec le bouton droit sur Poste de travail, sélectionnez Propriétés; Avancée; Les paramètres du système; Avancée; Variables d'environnement. Recherchez ensuite PATH dans la deuxième case et définissez la variable comme dans l'image ci-dessous.

Éditeur de variable PATH

Zar E Ahmer
la source
2

Définir la variable d'environnement java dans Centos / Linux

/ home / vi .bashrc

export JAVA_HOME = / opt / oracle / product / java / jdk1.8.0_45

export PATH = $ JAVA_HOME / bin: $ PATH

java -version

Guna Sekaran
la source
2

N'oubliez pas que la %CLASSPATH%variable d'environnement est ignorée lorsque vous utilisez java / javac en combinaison avec l'un des arguments -cp, -classpathou -jar. Il est également ignoré dans un IDE comme Netbeans / Eclipse / IntelliJ / etc. Il est seulement été utilisé lorsque vous utilisez java / javac sans aucun des arguments mentionnés ci - dessus.

Dans le cas de fichiers JAR, le chemin d' class-pathaccès aux classes doit être défini comme entrée dans le fichier manifest.mf. Il peut être défini séparé par des points-virgules et relatif à la racine du fichier JAR.

Dans le cas d'un IDE, vous avez le soi-disant «chemin de génération» qui est fondamentalement le chemin de classe qui est utilisé à la fois au moment de la compilation et à l'exécution. Pour ajouter des bibliothèques externes, vous déposez généralement le fichier JAR dans un dossier (soit précréé par IDE ou créé de manière personnalisée) libdu projet qui est ajouté au chemin de génération du projet.

BalusC
la source
@Balus, c'est un débutant qui essaie de configurer son environnement java sur un PC Windows.
Srinivas MV
1
Exactement. Celui qui serait très confus quand il découvrirait que le chemin de classe qu'il a configuré ne fonctionne pas pour les fichiers JAR ni les IDE. Juste un avertissement à sa place :)
BalusC
1

Pour le déploiement, il est préférable de configurer exactement le chemin de classe et de garder l'environnement clair. Ou à * .bat (le même pour linux, mais avec des symboles de variables corrects):

CLASSPATH="c:\lib;d:\temp\test.jar;<long classpath>"
CLASSPATH=%CLASSPATH%;"<another_logical_droup_of_classpath" 
java -cp %CLASSPATH% com.test.MainCLass

Ou en ligne de commande ou * .bat (pour * .sh aussi) si l'ID du chemin de classe n'est pas très long:

java -cp "c:\lib;d:\temp\test.jar;<short classpath>"
St.Shadow
la source
1

Pour les fenêtres:

  • Faites un clic droit sur «Mes ordinateurs» et ouvrez «Propriétés».
  • Sous Windows Vista ou Windows 7, accédez à "Paramètres système avancés". Sinon, passez à l'étape suivante.
  • Allez dans 'Advanced Tab' et cliquez sur le Environment Variablesbouton.
  • Sélectionnez «Chemin» dans la liste des «Variables système», puis appuyez sur Editet ajoutez C:\Program Files\java\jdk\binaprès un point-virgule.
  • Maintenant, cliquez sur le bouton 'nouveau' sous les variables système et entrez 'JAVA_HOME' comme nom de variable et chemin vers le répertoire de base jdk (ex. 'C: \ Program Files \ Java \ jdk1.6.0_24' si vous installez java version 6. Répertoire le nom peut changer avec les différentes versions java) en tant que variable_value.
Pratap Singh
la source
1
  1. Téléchargez le JDK
  2. Installez-le
  3. Ensuite, configurez les variables d'environnement comme ceci:
  4. Cliquez sur MODIFIER

entrez la description de l'image ici

  1. Cliquez ensuite sur CHEMIN , cliquez sur Ajouter, puis ajoutez-le comme ceci: entrez la description de l'image ici
Abhishek Sengupta
la source