Java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactory
Я действительно решил эту проблему, но мне потребовались несколько дней, поэтому я подумал, что приложу свое решение здесь для других.
Я использую Fedora 11, и в Eclipse я попытался добавить сервер Tomcat 6 и запустить его. Я получаю следующую ошибку:
"Запуск Tomcat v6.0 Server at localhost" возникла проблема.
Сервер Tomcat v6.0 Сервер на локальном хосте не запускался.
Затем в моей консоли я получил следующее:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactory
at org.apache.catalina.startup.Bootstrap.<clinit>(Bootstrap.java:54)
Caused by: java.lang.ClassNotFoundException: org.apache.juli.logging.LogFactory
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:323)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:268)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:336)
... 1 more
Could not find the main class: org.apache.catalina.startup.Bootstrap. Program will exit.
Я отправлю решение в ответе ниже.
Ответы
Ответ 1
Я нашел решение здесь: http://forums.opensuse.org/applications/391114-tomcat6-eclipse-not-working.html
- В Eclipse откройте вкладку "Сервер".
- Дважды щелкните запись "Tomcat6", чтобы увидеть конфигурацию.
- Затем нажмите ссылку "Открыть запуск конфигурации" в блоке "Общая информация".
- В диалоговом окне выберите вкладку "Classpath".
- Нажмите кнопку "Добавить внешнюю банку".
- Выберите файл "/usr/share/tomcat6/bin/tomcat-juli.jar"
- Закройте диалоговое окно.
- Запустите tomcat 6 из Eclipse.
Надеюсь, публикация здесь поможет бедным людям.
Ответ 2
Я скопировал содержимое каталога "C:\Program Files\Apache Software Foundation\Tomcat 6.0\conf" в каталог "workspace\Servers\Tomcat v6.0 Server в localhost-config" для Eclipse. Я обновил папку "Серверы\Tomcat v6.0 Server в localhost-config" в Eclipse Project Explorer, а затем все было хорошо.
Ответ 3
что-то вроде:
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager"/>
<role rolename="admin"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="role1" password="tomcat" roles="role1"/>
<user username="TomcatAdmin" password="tomcat" roles="admin,manager"/>
</tomcat-users>
-
создать корневой каталог для вашего проекта J2EE, например:
$mkdir -p ~/Project/java/
-
сделать символическую ссылку, /usr/share/tomcat 6/webapps/to ~/Project/java/
# ln -s/home//Project/java//dist/.war/usr/share/tomcat6/webapps/.war
Примечание: архив военного архива создается автоматически при использовании netbeans
0r вы можете сделать:
# ln -s /home/<login>/Project/java/<myProject>/webapps /usr/share/tomcat6/webapps/<myProject>
-
проверить файл /etc/hosts, этот файл должен содержать имя машины, файл моих хостов
jonathan 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
:: 1 localhost localhost.localdomain localhost6 localhost6.localdomain6
-
запустите службу httpd
# service httpd start
-
проверить веб-страницу loclahost
-
start tomcat6
# service tomcat6 start
-
проверить localhost: веб-страница 8080
-
проверьте, что tomcat покажет ваш проект
если нет:
- проверить символическую ссылку и перезапустить службу tomcat6
- или добавьте руководство пользователя с веб-страницей менеджера tomcat
a) Задайте имя проекта
б) Se путь к файлу web.xml
c) Действительный
d) начать свой проект (с веб-страницы).
для fedora 13 и под ними есть какая-то проблема, как это исправить:
# chmod -R g+w /var/log/tomcat6 /etc/tomcat6/Catalina
# chmod -R g+w /usr/share/tomcat6/work/
проверить файлы журналов, расположенные в /var/log/tomcat 6/, если они больше не разрешены.
Ответ 4
вышеупомянутые решения мне не помогли, я мог бы решить это, переустановив сервер Tomcat, который занял несколько секунд.
Ответ 5
На моем ПК мне пришлось снова открыть запись Tomcat6 после 7-го шага, упомянутого выше, а затем изменить параметр по умолчанию в Server locations
на Use tomcat installation
.