Я не совсем уверен, как я попал в этот беспорядок, но по какой-то причине я не могу изменить текущую версию Java, используя альтернативы. Я могу запускать альтернативы --config java и набирать свой выбор, но когда я повторяю номер версии для java или javac, он каждый раз отбрасывает 1.5 каждый раз (несмотря на альтернативы, показывающие текущую версию 1.6). Между прочим, сервер, с которым я работаю, работает RHEL5.
Я проверил, что пути, используемые в альтернативах, указывают на правильные каталоги. Вот некоторые результаты моей сессии:
[brilewis @myserver] $sudo /usr/sbin/update -alternatives --config Java
Есть 3 программы, которые предоставляют 'Ява'.
Команда выбора
** 1/usr/lib/jvm/jre-1.4.2-gcj/bin/java
+ 2/usr/java/jdk1.5.0_10/bin/java
3/usr/java/jdk1.6.0_16/bin/javaВведите, чтобы сохранить текущий выбор [+] или номер выбора типа: 3
[brilewis @myserver] $java -version
java version "1.5.0_10" Java (TM) 2 Runtime Окружающая среда, стандартная версия (сборка 1.5.0_10-b03) Виртуальная машина Java HotSpot (TM) (сборка 1.5.0_10-b03, смешанный режим)
[brilewis @myserver] $sudo/usr/sbin/update-alternatives --config java
Есть 3 программы, которые предоставляют "java".
Команда выбора
** 1/usr/lib/jvm/jre-1.4.2-gcj/bin/java
2/usr/java/jdk1.5.0_10/bin/java
+ 3/usr/java/jdk1.6.0_16/bin/javaВведите, чтобы сохранить текущий выбор [+], или введите номер выбора:
UPDATE: Ниже представлен вывод echo $PATH
:
/usr/java/jdk1.5.0_10/bin:/usr/local/apache- ant -1.7.1/бен:/usr/local/apache-tomcat-6.0.24:/USR/Керберос/бен:/USR/локальные/бен:/бен:/USR/бен:/USR/NX/бен:/Главная/brilewis/бен
UPDATE (4/26/10): Я последовал за предложением Берта и удалил JAVA_HOME из среды PATH var в /etc/profile. После этого я смог использовать альтернативы для изменения версии Java. Единственная проблема в том, что когда я пытаюсь запустить javac
, я получаю "- bash: javac: command not found". Этого не происходит, если для версии установлено значение 1.5.