2012-05-21 2 views
6

Я использую сценарий Windows .bat и я поставил JAVA_HOME как C:/Program Files/Java/jdk1.6.0_32 , когда я делаю java -version, он по-прежнему показывает 1,3JAVA_HOME и Java -версия

Как я могу это исправить? Что я делаю не так?

+0

Это не дает ошибок. Btw – user1345883

+1

Показать выход 'echo% PATH%'. –

+1

Этого недостаточно. Подготовьте 'JAVA_HOME \ bin' к' PATH'. – hmjd

ответ

6

Попробуйте %JAVA_HOME%\bin\java -version

Если вы изменяете JAVA_HOME, обычно лучше вызвать java абсолютный путь (с использованием JAVA_HOME), потому что новый двоичный файл, вероятно, не в пути (а затем для Windows будет загружаться неправильно двоичный).

6

Убедитесь, что переменная окружения PATH указывает на %JAVA_HOME%\bin.

0

Вызов java -version из командной строки, заставляет cmd.exe выполнять поиск в "известных" каталогах. «Известный» означает переменную среды PATH. Кажется, что ваш PATH содержит папку java 1.3 bin, а не 1.6.

JAVA_HOME - это другая переменная, которая используется (например, не только) с помощью java-оберток или скриптами, исполняющими некоторые java-файлы.

Попробуйте сделать это:

SET JAVA_HOME=C:/Program Files/Java/jdk1.6.0_32 
%JAVA_HOME%/bin/java -version 

Добавить цитаты, где это необходимо.

1

Обязательно не смешивайте системный путь переменной и путь системы переменных пользователя. Я чувствую себя нормально в вызове java без абсолютного пути (когда я знаю, как настроены JAVA_HOME и PATH).

3

Для меня проблема была в моей переменной PATH, C:\ProgramData\Oracle\Java\javapath; был добавлен java windows install до моего %JAVA_HOME%\bin;. Так что я бы echo %JAVA_HOME% указал на JDK7 и java -version, показывая jdk8.

Я бы поставил %JAVA_HOME%\bin; до C:\ProgramData\Oracle\Java\javapath;, так что java -version отображает jdk7.

+0

Это работает для меня. Отличный ответ. – vkrams

0

У меня была аналогичная проблема, в моем случае у меня было две версии java. его можно устранить, удалив одну версию java полностью из системы.

Смежные вопросы