Modification de la version actuelle de Java dans Windows

16

Je travaille dans un environnement Windows XP et j'ai récemment installé java 1.6 car il était requis par une application.

Cependant, je ne veux pas que ce soit la version par défaut de java à utiliser. Comment le définir pour que la commande java -version renvoie 1.5.x

Dunc
la source
Je voudrais jeter un oeil à pathla variable d'environnement. Vous pouvez l' examiner dans la ligne de commande avec: echo %PATH%. Ce sont des dossiers par défaut dans lesquels les binaires sont recherchés. Si vous trouvez un chemin vers JAVA, vous pouvez l'ajuster facilement dans les Préférences Système.
Rekin

Réponses:

21

Modifiez votre variable PATH afin qu'elle ait l'emplacement du répertoire jdk5 / bin:

  1. Démarrer -> Panneau de configuration -> Système -> Avancé
  2. Cliquez sur Variables d'environnement, sous Variables système, recherchez PATH et cliquez dessus.
  3. Dans les fenêtres d'édition, modifiez PATH en ajoutant l'emplacement de votre répertoire jdk5 / bin au début. 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 du répertoire comme valeur.
  4. Ferme la fenêtre.
  5. Rouvrir la fenêtre d'invite de commandes et exécuter java -version
dogbane
la source
Ça n'a pas marché. Le bac jre ne faisait pas auparavant partie du chemin, il doit donc être défini ailleurs.
Dunc
9
En effet, lorsque vous installez Java, les bacs sont placés dans C: \ WINDOWS \ system32, qui fait partie de votre PATH. Vous devez ajouter le répertoire jre / bin au début du CHEMIN.
dogbane
Désolé, je n'ai pas repéré la première partie. Merci
Dunc
3
Si plusieurs JRE sont installés, le seul moyen d'y parvenir est de modifier l'entrée de registre. Surtout parce qu'il existe des outils qui lisent les informations JRE du registre et non le chemin de classe.
Ayusman
17

Dans le shell de commande:

set JAVA_HOME=C:\jdk1.6.0u24
set PATH=%JAVA_HOME%\bin;%PATH%

Cela va temporairement configurer l'environnement dans le shell de commande. Maven, Ant, etc. reprendra votre nouvelle version de Java sans avoir à accéder au panneau de configuration à plusieurs reprises.

Des outils comme Eclipse devraient pouvoir sélectionner le JDK à utiliser dans leurs propres outils de configuration à utiliser dans leurs environnements.

Mike Thomsen
la source
6

Java 8 crée trois raccourcis sur \ ProgramData \ Oracle \ Java \ javapath qui pointent vers les derniers Java8 java.exe, javaw.exe et javaws.exe, puis place \ ProgramData \ Oracle \ Java \ javapath à l'avant du CHEMIN afin que peu importe ce que vous faites à la variable d'environnement JAVA_PATH, vous obtenez toujours la dernière version de Java 8.

Vous pouvez contourner cela en

1) renommer \ ProgramData \ Oracle \ Java \ javapath en autre chose (\ ProgramData \ Oracle \ Java \ javapath8 par exemple)

2) créer un nouveau dossier javapath sous Java et

3) créer les raccourcis dont vous avez besoin.

Restaurez simplement le javapath lorsque vous avez terminé avec les anciennes versions et vous récupérez Java 8.

Ron
la source
1
Eh bien, vous pouvez toujours placer votre ancien emplacement Java dans le PATH, en premier lieu, et il gagnera.
leonbloy
Bref, mais au point, très bonne réponse, celle-ci explique plus précisément comment générer plusieurs versions de javapathdossiers, en utilisant des liens symboliques, de sorte que vous pouvez basculer sans délai entre les versions, et les éléments de registre qui manquent ici, captures d'écran et astuce pour éviter de redémarrer après les modifications aussi. voir stackoverflow.com/questions/27996603 .
3

Il existe deux façons de résoudre ce problème:

1) Changer le CHEMIN (comme quelqu'un l'a déjà mentionné) L'important avec cette solution est de définir JAVA_HOME avant les chemins Windows. C'est parce que sous le dossier windows, il y a un java.exe qui redirige vers le dernier jre installé .

2) Regedit. La clé HKEY_LOCAL_MACHINE-> SOFTWARE-> JAVASOFT-> Java Runtime Environment contient la dernière version installée vers laquelle le java.exe du dossier Windows redirige. Si vous changez cela en une version précédemment installée, tout devrait être peachy. (Au moins, je pense que c'est la bonne clé de registre)


la source
1

La dernière version de JRE que vous avez a toujours priorité sur tout paramètre PATH. Donc, pour être sûr, désinstallez le 1.6 JRE si vous ne voulez pas qu'il soit le principal. Vous pouvez avoir un nombre illimité de JDK installés en parallèle.

adarshr
la source
1

Étant donné que Java prend en charge une -versionoption de ligne de commande, vous pouvez l'utiliser pour sélectionner une version spécifique à exécuter, par exemple:

java -version:1.7 -jar [path to jar file]

exécutera une application jar dans Java 1.7, si elle est installée.

Pour plus de détails, consultez la documentation d'Oracle .

Akhilesh Dubey
la source
@Jawa, ce java -version:1.7 -jar [path to jar file]n'est plus pris en charge. Vous devrez peut-être suivre la route PATH Cordialement.
Adeola Ojo
0

Créez un fichier «setjava.bat» et enregistrez ce fichier avec le contenu ci-dessous et n'oubliez pas de changer JAVA_PATH pour votre système. N'oubliez pas non plus d'enregistrer ce fichier avec l'extension .bat.

echo off
REM IMPORTANT
REM RUN THIS SCRIPT AS ADMINISTRATOR
set JAVA_REQ_VER=%1
IF "%JAVA_REQ_VER%" == "7" (
 set JAVA_PATH="C:\Progra~1\Java\jdk1.7.0_79"
) ELSE (
 REM At present I only need to assign 8 by default if not 7
 set JAVA_PATH="C:\Progra~1\Java\jdk1.8.0_111"
)
setx /M JAVA_HOME "%JAVA_PATH%"

Vous venez maintenant d'exécuter ce script avec des privilèges d'administrateur.

Exemple: setjava 8, setjava 7

Consultez ce lien pour plus de détails

Ricky
la source