Зміна поточної версії Java в Windows


16

Я працюю в середовищі Windows XP і нещодавно встановив java 1.6, оскільки цього вимагала програма.

Однак я не хочу, щоб це версія Java використовувалась за замовчуванням. Як встановити його, щоб команда java -version повернула 1.5.x


Я б поглянув на pathзмінну середовища. Ви можете перевірити його в командному рядку з допомогою : echo %PATH%. Це папки за замовчуванням, де шукаються двійкові файли. Якщо ви знайдете шлях до JAVA, ви можете легко налаштувати його в системних налаштуваннях.
Рекін

Відповіді:


21

Змініть змінну PATH так, щоб вона містила розташування каталогу jdk5 / bin:

  1. Пуск -> Панель управління -> Система -> Додатково
  2. Клацніть на Змінні середовища, у розділі Системні змінні знайдіть PATH та натисніть на нього.
  3. У вікнах Редагування змініть PATH, додавши до початку розташування каталогу jdk5 / bin. Якщо у вас немає елемента PATH, ви можете вибрати, щоб додати нову змінну та додати PATH як ім'я та розташування каталогу як значення.
  4. Закрити вікно.
  5. Повторно відкрийте вікно командного рядка та запустіть java -version

Це не спрацювало. Раніше jre bin раніше не був частиною шляху, тому його потрібно встановити десь в іншому місці.
Данк

9
Це тому, що при встановленні Java, бункери ставлять у C: \ WINDOWS \ system32, що є частиною вашої PATH. Ви повинні додати каталог jre / bin до початку PATH.
dogbane

Вибачте, що не помітили початкової частини. Спасибі
Данк

3
Якщо у вас встановлено кілька JRE, єдиний спосіб досягти цього - змінити запис реєстру. Тим більше, що є інструменти, які читають інформацію про JRE з реєстру, а не шлях до класу.
Айюсман

17

У командній оболонці:

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

Це тимчасово створить середовище в командній оболонці. Maven, Ant і т.д. перейдуть на вашу нову версію Java без необхідності повторно переходити на панель керування.

Такі засоби, як Eclipse, повинні мати можливість вибору, який JDK використовувати у власних інструментах конфігурації для використання у своїх середовищах.


6

Java 8 створює три ярлики на \ ProgramData \ Oracle \ Java \ javapath, які вказують на останні Java8 java.exe, javaw.exe та javaws.exe, а потім ставить \ ProgramData \ Oracle \ Java \ javapath на передній частині PATH, щоб незалежно від того, що ви робите зі змінною середовища JAVA_PATH, ви все одно отримаєте останню версію Java 8.

Ви можете обійти це за допомогою

1) перейменування \ ProgramData \ Oracle \ Java \ javapath на щось інше (наприклад, \ ProgramData \ Oracle \ Java \ javapath8)

2) створення нової папки javapath під Java та

3) створення ярликів, які вам потрібні.

Просто відновіть javapath, коли ви закінчите зі старими версіями і повернете Java 8 назад.


1
Ну, ви завжди можете розмістити своє старе місце розташування Java в PATH, в першу чергу, і воно виграє.
leonbloy

Коротка, але до речі, дуже хороша відповідь, це пояснює конкретніше, як генерувати декілька версій javapathпапок, використовуючи символічні посилання, щоб ви могли перемикатися між часом між версіями та реєстрами, яких тут немає, скріншоти та трюк щоб уникнути перезавантаження також після змін. див. stackoverflow.com/questions/27996603 .

3

Виправити це можна двома способами:

1) Змініть PATH (як хтось уже згадував) Важливим у цьому рішенні є встановити JAVA_HOME перед вікнами доріжок Windows. Це тому, що під папкою Windows знаходиться java.exe, який переспрямовує на останній встановлений jre .

2) Регедіт. Ключ HKEY_LOCAL_MACHINE-> SOFTWARE-> JAVASOFT-> Environment Runtime Environment містить останню встановлену версію, на яку java.exe перенаправляє папку Windows. Якщо ви зміните це на попередньо встановлену версію, все повинно бути чудовим. (Принаймні, я думаю, що це правильний ключ реєстру)


1

Остання версія JRE, що ви завжди маєте перевагу перед будь-яким налаштуванням PATH. Отже, щоб бути впевненим, видаліть 1.6 JRE, якщо ви не хочете, щоб він був основним. Ви можете мати будь-яку кількість JDK встановлених паралельно.


1

Оскільки Java підтримує -versionпараметр командного рядка, ви можете використовувати її для вибору конкретної версії для запуску, наприклад:

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

запустить jar програму в Java 1.7, якщо вона встановлена.

Детальнішу інформацію див. У документації Oracle .


@Jawa це java -version:1.7 -jar [path to jar file]більше не підтримується. Можливо, вам доведеться пройти шлях PATH З повагою.
Adeola Ojo

0

Створіть файл «setjava.bat» і збережіть цей файл із вмістом нижче, і не забудьте змінити JAVA_PATH для вашої системи. Також не забудьте зберегти цей файл з розширенням .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%"

Тепер ви просто запустите цей скрипт з правами адміністратора.

Приклад: setjava 8, setjava 7

Перевірте це посилання для отримання більш детальної інформації

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.