Сообщается о неправильной версии Java

Сообщается о неправильной версии Java

Я использую Windows 7 Professional x64 и у меня установлены следующие версии Java:

х64

  • C:\Program Files\Java
    • jdk1.6.0_24
    • jdk1.7.0_04
    • jdk1.7.0_07
    • jre6
    • jre7

x86

  • C:\Program Files (x86)\Java
    • jre1.6.0_07
    • jre6
    • jre7

в моих переменных окружения есть мои PATHсодержащие C:\Program Files\Java\jdk1.6.0_24\binи JAVA_HOMEустановленные наC:\Program Files\Java\jdk1.6.0_24\bin

Однако работающие java -versionотчеты

java version "1.7.0_07"
Java(TM) SE Runtime Environment (build 1.7.0_07-b10)
Java HotSpot(TM) 64-Bit Server VM (build 23.3-b01, mixed mode)

Как это возможно, если в моих переменных окружения нет ссылки на эту версию Java?

Любая помощь по этому вопросу была бы очень кстати, так как я пытаюсь бежатьApache ANTс использованием Java 1.6.

решение1

Вероятно, вы скопировали java.exe в один из системных путей (насколько мне известно, это поведение установщика Java по умолчанию). Чтобы проверить, что на самом деле выполняется при запуске 'java -version', запустите из командной строки:
for %I in (java.exe) do @echo %~$PATH:Iи он скажет вам, где это находится.

решение2

При установке публичной JRE (используемой плагином Java) файл java.exe также создается в C:\WINNT\system32 (IIRC). Вероятно, выполняется эта команда java, поскольку C:\WINNT\system32 предшествует каталогу JDK/bin в вашем PATH.

Поместите каталог JDK/bin в начало PATH

решение3

Папки PATH проверяются в том порядке, в котором они появляются. Попробуйте переместить путь java на передний план. Если это исправит проблему, значит, где-то в вашем пути есть другая версия.

решение4

Как я недавно узнал, убедитесь, что вы определяете переменные JAVA_HOMEв разделе «Системные переменные», а не в разделе «Пользовательские переменные».

У меня было %JAVA_HOME%\binв начале, PATHно это не работало - добавление JAVA_HOMEв систему решило проблему.

Связанный контент