Я установил 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 и извлечение вручную.