LINUX.ORG.RU

Enterprise application shared library

 ,


0

1

Здравствуйте.

Подскажите пожалуйста как можно с помощью maven собрать EAR, так что бы в него были включены : -resources\META-INF\application.xml -resources\META-INF\MANIFEST.MF -resources\META-INF\ibmconfig\cells\defaultCell\nodes\defaultNode\servers\defaultServer\libraries.xml

Причем что бы libraries.xml указывал сразу на последние версии всех JAR в локальном репозитории, т.е. <classpath>.../.m2/com/adk/1.1.3/TestJAR-1.1.3.jar</classpath>

Как-то у меня один раз получилось собрать такой EAR, но как я не могу понять, и повторить не получается.

Структура примерно такая:

TestEAR: |-TestWAR1 |-TestWAR2 |-TestEJB1 |-TestEJB2

TestWAR1 dependency: -TestJAR1 -TestJAR3

TestWAR2 dependency: -TestJAR1 -TestJAR2

TestEJB1 dependency: -TestJAR2 -TestJAR3

TestEJB2 dependency: -TestJAR2 -TestJAR4

TestEJBClient1: -TestJAR2 -TestJAR3

TestEJBClient1: -TestJAR2 -TestJAR4

И в локальном репозитории соответственно лежат: TestEAR TestWAR1 TestWAR2 TestEJB1 TestEJB2 TestJAR1 TestJAR2 TestJAR3 TestJAR4 TestEJBClient1 TestEJBClient2

Использую: RAD 9.6 (+плагин для Eclipce) или Intellij Idea 2018.3.4 WebSphere 8.5.5 maven 3.6.1

Смысл мавена в том, чтобы указывать на конкретные версии. Есть ещё снапшоты, конечно, но это только подтверждает правило. Но если у тебя проекты импортированы в эклипс, то эклипс может подключать зависимости как проекты, а не как версии в репе.

turtle_bazon ★★★★★ ()
Ответ на: комментарий от turtle_bazon

Верно. Эклипс подключает модули корректно. То есть включает в EAR нужные WAR и EJB, и так же нужные либы подключает. В этом пробле мнет. Проблема в другом. При публикации EAR развернутого в рабочей области, он публикуется без ссылки на Shared Library. И уже сам контейнер на сервере лежит без ссылок на библиотеки. Его можно подкинуть руками прямо на сервере. Но при внесении изменений в локальный EAR, он перепубликуется и ссылка опять теряется.

Можно конечно прикрутить через настройки в рабочей области эту ссылку прямо в EAR (указать что это EAR версии 6.0, указать целевую среду выполнения и в Deployment descriptor'е прописать Shared Library) Но таких EARов у меня много, и разных версий, по этому ручной труд - не выход.

Как настроить pom файлы что бы при сборке EAR файла туда включались ссылки на shared library?

xip_void ()
Ответ на: комментарий от xip_void

Вот тут, конечно, беда. Эклипс, помню, имеет некоторые глюки в этом. И пока его научишь нормально зависимости собирать, много галочек перетыкаешь. Но, в последнее время, если мавен проект импортировать, он нормально работал. Видал, что-то специфичное.

turtle_bazon ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.