Несколько идентичных файлов JAR в файле EAR
-
28-09-2019 - |
Вопрос
Я создал файл уха с файлом WAR внутри, но файл уха содержит файлы JAR, которые уже находятся в папке Lib файла войны. Как я могу удалить дубликаты файлов JAR и где должны быть эти файлы JAR? В папке «Файл войны» или за пределами файла войны? (Я использую плагин Maven ушной плагин и плагин War Maven в моем проекте).
Решение
Я, наконец, выяснил способ сделать это, создавая файлы тощей войны в файле уха. Я был вдохновлен примером военного плагина Maven отсюдаточечные войны
Последовал инструкции прибора, я переместил все файлы JAR из модуля WAR и поместите его в папку lib в файле EAR.
Таким образом, окончательная структура файлов ушей будет:
ear-app
-- lib (all the jar files will be here)
-- webModule1
-- lib (empty)
-- webModule2
-- lib (empty)
-- ejbModule
Другие советы
Если у вас есть банки, которые используются обоим, архив EJB и веб-архивом, вы можете сделать следующее:
- Держите все общие банки в корне .ear
- использовать
Class-Path
Атрибут meanesest.mf в EJB и веб-архивах для обозначения этих файлов JAR. Помните, что местоположение банок будет относительно корня файла уха.
Даже если у вас нет банки EJB, вышеупомянутые шаги будут работать.