У меня есть серия зависимых проектов Java. Я хотел бы упаковать их вместе в один JAR-файл, который будет использоваться в моем WAR-файле. Эти проекты зависят от большого количества внешних библиотек и проектов, таких как log4j, apache-commons и т. Д.Упаковка файла JAR в файле WAR
Я выбираю все проекты в Eclipse и экспортирую как JAR-файл, а затем копирую JAR-файл в my/WEB-INF/lib моей WAR, затем разверните мое приложение. У меня есть следующие проблемы:
ClassNotFoundException. Веб-приложение не может найти библиотеки, упакованные в мой JAR-файл. Я решил эту проблему, переместив все зависимые библиотеки в папку/WEB-INF/lib и добавив записи в класс MANIFEST.MF JAR, очень болезненный процесс.
Классы в JAR-файле не могут найти файлы свойств, упакованные внутри JAR. Как решить эту проблему?
Есть ли стандартное решение этих проблем? Благодарю.
* Почему вы хотите, чтобы все ваши зависимости находились в одной банке? Что не так, просто поместив все их в 'WEB-INF/lib'? (Также: вам не нужны записи Class-Path, webapp автоматически получает доступ ко всем файлам jar в 'WEB-INF/lib'). –
Я бы предпочел сохранить мой JAR-файл автономным и распространяемым, вместо того, чтобы взорвать ненужные зависимости в моем WEB-INF/lib –
Они не лишние, не так ли? Если вы хотите использовать самодостаточную банку, не используйте внешние библиотеки. –