Ошибка сборки Tomcat: java.lang.NoClassDefFoundError - PullRequest
0 голосов
/ 08 октября 2019

Projet отлично работает в tomcat localhost, но когда я загружаю его в удаленный tomcat, я получаю эту ошибку: /, у меня есть jar, содержащий класс ImageReaderFactory в classpath, я не понял, в чем может быть проблема, яочистил папку / tomcat / work / Catalina / localhost, но всегда одну и ту же ошибку: java.lang.NoClassDefFoundError

07-Oct-2019 23:06:25.584 SEVERE [http-apr-8080-exec-267] org.apache.catalina.core.StandardWrapperValve.invoke Servlet.service() for servlet [UploadServlet] in context with path [/MyServer] threw exception [Servlet execution threw an exception] with root cause
 java.lang.NoClassDefFoundError: org/dcm4che3/imageio/codec/ImageReaderFactory
    at org.dcm4che3.imageio.plugins.dcm.DicomImageReader.setMetadata(DicomImageReader.java:794)
    at org.dcm4che3.imageio.plugins.dcm.DicomImageReader.readMetadata(DicomImageReader.java:713)
    at org.dcm4che3.imageio.plugins.dcm.DicomImageReader.read(DicomImageReader.java:452)
    at com.project.dicomserver.UploadServlet.getFrameIcon(UploadServlet.java:86)
    ....

У кого-нибудь есть идеи?

изображение

1 Ответ

0 голосов
/ 08 октября 2019

Есть куча вещей, которые могут пойти не так в вашем конкретном случае. Так что отвечаю, насколько мне известно. Внесите изменения, добавив в вопрос как можно больше деталей, и мы поможем вам в дальнейшем.

Каждое приложение в tomcat должно иметь определенную структуру папок. Структура папок задокументирована здесь . Короче говоря, файлы war должны быть развернуты в каталоге $CATALINA_BASE/webapps/.

Так что, если ваше приложение "myapp", тогда должен быть каталог $CATALINA_BASE/webapps/myapp.

Внутри каталога $CATALINA_BASE/webapps/myapp нам нужно иметь WEB-INF. Не $CATALINA_BASE/webapps/myapp/WebContent/WEB-INF, а $CATALINA_BASE/webapps/myapp/WEB-INF! И дело имеет значение.

Если это не то, как ваше приложение разворачивается в ванильного кота, оно не будет работать должным образом. Прочтите официальную документацию

Теперь о вашей среде разработки, посмотрите, были ли изменены ваши конфигурации Eclipse. Параметры Export As War могут быть изменены в нескольких местах, и все они могут повлиять на созданный вами файл войны. В случае сомнений я смотрю на эту ссылку

Используйте инструмент для сборки, такой как maven или gradle . Эти инструменты предоставляют стандарты для компиляции, архивирования, тестирования и развертывания приложений и позволяют вам меньше беспокоиться о проблемах, связанных с окружающей средой.

...