Ответ 1
В свойствах проекта перейдите к сборке развертывания. Добавьте туда записи сборки, которые вы вручную добавили в качестве пользовательских библиотек. Это закончится в /WEB-INF/lib
развернутой WAR.
Я использую Eclipse 3.7 (STS) с Tomcat 7, работающим внутри IDE. Я создал новый проект Dynamic Web и добавил один JSP файл в корневую папку веб-контента. Я могу запустить Tomcat и получить доступ к JSP из Eclipse без проблем.
Я добавил несколько сторонних JAR в проект из пользовательских библиотек (я не использую управление maven или auto dependecies). В JSP я ссылаюсь на класс из JAR файла проекта, я могу скомпилировать это без проблем, но когда я развертываю Tomcat, JSP бросает ClassNotFoundException. Очевидно, что Tomcat не может найти JAR из моих настроек библиотеки. Я попытался создать конфигурацию Run As для Tomcat Server, и я установил путь к классу в соответствие с параметрами пути к классу проекта, но у меня по-прежнему возникает одна и та же проблема класса.
Я мог бы обойти эту проблему, вручную скопировав все JAR-проекты в каталог WEB-INF/lib, чтобы webapp мог найти все зависимости, но это абсурдно, и я не ожидаю, что это решение, поскольку это кошмар обслуживания.
Я что-то упустил?
В свойствах проекта перейдите к сборке развертывания. Добавьте туда записи сборки, которые вы вручную добавили в качестве пользовательских библиотек. Это закончится в /WEB-INF/lib
развернутой WAR.
Вам нужно скопировать файлы jar в папку WEB-INF/lib: это то, где они должны быть.
Eclipse должен предложить вам возможность генерировать WAR файл, который включает в себя все зависимости: я не использовал веб-инструменты для хорошего времени, но так или иначе все зависимости должны быть в WEB-INF/lib или классе загрузчик не сможет их найти.