Почему я не могу установить JAVA_HOME и JRE_HOME на что-то другое?
Я использую Ubuntu и Djatoka (который работает в Tomcat) не будет работать с OpenJDK. Поэтому я установил JAVA_HOME и JRE_HOME для Sun java, которую я скачал и экспортировал переменные. Когда я запускаю tomcat, он сообщает JRE_HOME, что я установил.
Однако, когда я на самом деле смотрю на переменные, они указывают на OpenJDK, и djatoka не работает. Я не могу найти место, где это жестко закодировано, и даже когда я отбрасываю присваивания переменных в catalina.sh и экспортирую оттуда, происходит то же самое.
Что, черт возьми, происходит? Спасибо,
рукав моря
3 ответа
- Вы запускали tomcat в том же сеансе, где вы экспортировали значение?
- Вы установили tomcat вручную или получили его?
- Вы можете установить JAVA_HOME, который tomcat должен использовать в tomcat/bin/catalina.sh
Вы также можете установить его в
/etc/environment
, например:JAVA_HOME = / usr / lib / jvm / java-6-sun https://help.ubuntu.com/community/EnvironmentVariables
Какую операционную систему ты используешь? Убедитесь, что вы устанавливаете эти переменные среды для всей системы, а не для пользователя.
Ubuntu использует несколько проводной alternatives
система. Программа в /usr/bin указывает на /etc/ альтернативы, и оттуда она идет в /usr/share/jdk-что-то.
Есть простой способ: удалить OpenJDK и GCJ. Но вы можете столкнуться с проблемами зависимости.
Или почитайте про альтернативную систему.
man update-alternatives
должно помочь Это не так сложно. Немного сложно - и все.
Я должен добавить, что преимущество системы альтернатив заключается в том, что вы можете иметь несколько установок java параллельно (1.5, 1.6, 1.7 alpha, OpenJDK) и переключать с помощью одной команды все ссылки - на java, javac, appletviewer, javap и так далее. Не забывать КЛАССПАТ, афаик. А обновления с 1.6.23 до 1.6.24 обрабатываются Ubuntu без нареканий. Но досадно прослеживать ссылки до их корня.
Существует даже Java-ярлык для альтернатив:
update-java-alternatives --help