2009-10-14 3 views
6

ОС: Windows XPПочему Java-версия возвращает старую версию?

Я использую yuicompressor-2.4.2, чтобы сжать некоторые CSS перед загрузкой на мой сервер. Но когда я запускаю его, появляется следующее исключение:

Exception in thread "main" java.lang.UnsupportedClassVersionError: 
com/yahoo/platform/yui/compressor/Bootstrap (Unsupported major.minor version 48.0)

Так что я думаю, что это из-за JRE. Команда, которую я набрал в cmd: java -version

И он говорит: java-версия «1.3.1_01», но должна сказать «1.6.0_16», так как я установил последнюю версию.

Что делать, чтобы использовать Java в последней версии вместо старой?

+1

Вы можете разместить вывод 'эхо% путь%'? –

+0

У вас есть как минимум 2 версии java. Удалите ненужные версии. Убедитесь, что $ PATH содержит только предпочтительную версию. – jackrabbit

ответ

11

Установите переменную окружения JAVA_HOME, указывающий на каталог, где у вас есть JDK 1.6.0

set JAVA_HOME=your_path_to_jdk1.6 
set PATH=%JAVA_HOME%/bin;.;..;%PATH% 

Это из окна командной строки. Кроме того, вы можете сделать это из «Мой компьютер> Свойства> Дополнительно> Переменные среды»

+0

Спасибо, что сработали. =) Но я до сих пор не знаю, как при обновлении java он не изменил версию автоматически: S –

+1

Это может сработать, но я думаю, что это kludge. При правильной настройке вашей системы вам не нужно путаться с этим путем. – erickson

1

Добавить% JAVA_HOME%/бен к вашему PATH переменной окружения, где JAVA_HOME устанавливается в каталог JRE6u16

0

Вы должны проверить свою среду PATH переменная. Возможно, какое-то приложение, которое вы установили, поставило свою версию jre перед вашим в пути.

2

Вы должны изменить переменную PATH среды:

Мой компьютер> правой кнопкой мыши> Свойства> Дополнительно> Переменные среды

И ИЗМЕНИТЬ "Путь"

Append в конце пути к вашему 1,6 установка:

;C:\jdk1.6.xxx\bin 

и удалите предыдущий, если он имеется.

0

Похоже на старую версию Java все еще находится на системной переменной PATH среды (где ОС выглядит для команд) или JAVA_HOME (где yuicompressor может выглядеть для Java исполняемый файл)

Как изменяются эти переменные зависят от вашей операционной системы.

6

В Windows JRE устанавливает исполняемый файл java в каталоге Windows, который должен быть первым java на вашем пути. Это всего лишь оболочка, которая ищет в реестре Windows, чтобы найти домашний каталог Java (должен быть «% SystemDrive% \ Program Files \ Java \ jre6» для Java 6) и работает с использованием там библиотек.

Запустить% SystemRoot% \ system32 \ java -version и посмотреть, что вы получаете. Если это - Java 6, у вас есть записи на вашем пути до% SystemRoot% \ system32 (который действительно должен быть первым). Либо исправьте переменную% PATH%, либо вы должны быть явным всякий раз, когда хотите запустить эту версию Java.

При запуске этого экземпляра java не сообщается о Java 6, его не установлено (правильно). Удалите и попробуйте установить еще раз.

Если у вас возникли проблемы из-за PATH, это связано с тем, что вы или какое-то программное обеспечение вы установили с ним обезьяну; Я рекомендую использовать значение по умолчанию, которое должно иметь system32 в первую очередь. Все работает нормально, если используются значения по умолчанию.

Кроме того,% JAVA_HOME% не используется самим JRE . Некоторые распространенные Java-приложения, такие как tomcat и ant, имеют значение% JAVA_HOME%, поэтому, возможно, и yuicompressor. Но это де-факто конвенция, а не стандарт.

+1

Удивительный отзыв !! Я никогда об этом не думал. Я добавил к своему пути, но в конце. Как только я скорректировал приказы, он сразу решил проблему. Спасибо :) –

4

Перейти к директории system32 C: \ Windows \ System32 и удалить следующие 3 файла

  • java.exe
  • javaw.exe
  • javaws.exe

Теперь создать Переменная среды JAVA_HOME со значением = {корневой путь вашей установки jdk} и добавьте путь до папки bin вашего jdk в переменной среды PATH.

Открыть свежую командную строку и запустить Java -версию, чтобы подтвердить изменение

+0

решил мою проблему Спасибо – user2045810

+0

это может быть также в этом каталоге 'C: \ ProgramData \ Oracle \ Java \ javapath' вам также нужно удалить их –

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