Почему для установки tomcat6 требуется создание программной ссылки на /usr/share/java?

Почему для установки tomcat6 требуется создание программной ссылки на /usr/share/java?

Я установил tomcat6 на lucid, следуя инструкциям здесь:https://help.ubuntu.com/10.04/serverguide/C/tomcat.html

(Я не создавал версию уровня экземпляра — версия уровня системы была вполне приемлемой)

Когда я попытался запустить его, в журнале появилась следующая ошибка:

java.lang.ClassNotFoundException: org.apache.catalina.startup.Catalina
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    at org.apache.catalina.startup.Bootstrap.init(Bootstrap.java:216)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:391)

Эту проблему удалось решить, выполнив следующие действия:

root@...:/var/lib/tomcat6# ln -s /usr/share/java lib

Зачем мне это нужно было делать? Почему это не работает сразу? (Почему этого нет вРуководство Ubuntu по Tomcat?)

решение1

Установка Tomcat с помощью:

sudo apt-get install tomcat6

Tomcat должен нормально установиться и запуститься как служба. Службу можно запустить и остановить с помощью:

sudo /etc/init.d/tomcat6 start
sudo /etc/init.d/tomcat6 stop

Проверить, запущена ли служба http://localhost:8080/, можно, выполнив команду , используя браузер или командную строку:

curl http://localhost:8080/

Если у вас это не работает сразу, то либо что-то не так с настройками вашего компьютера, либо с тем, как вы пытаетесь запустить службу Tomcat.

Если вы пытаетесь запустить Tomcat любым другим способом, кроме как с помощью скрипта /etc/init.d/tomcat6, вы, скорее всего, столкнетесь с трудностями. Есть две переменные окружения, которые определяют, где находится дистрибутив Tomcat и файлы; CATALINA_HOME и CATALINA_BASE. Для ванильного варианта установки пакета они будут автоматически установлены скриптом init.d следующим образом:

CATALINA_HOME=/usr/share/tomcat6
CATALINA_BASE=/var/lib/tomcat6

Если вы пытаетесь запустить Tomcat каким-либо другим способом, возможно, эти переменные установлены неправильно, что может привести к описываемой вами ошибке.

Упакованный сервер Tomcat предназначен для использования для запуска Tomcat в качестве фоновой службы на сервере, и как таковой должен запускаться и останавливаться только с помощью скрипта init.d. Если вы пытаетесь запустить Tomcat на машине разработки (например, из IDE, такой как Eclipise), то вы обнаружите, что способ установки Tomcat пакетом не подходит, и вместо этого вам следует установить частный экземпляр, используяинструкциив руководстве сервера или позагрузкаего непосредственно с сайта Tomcat и извлечение вручную.

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