Модули Jboss wilfly - как повторно использовать библиотеку, зарегистрированную как модуль (и) - PullRequest
0 голосов
/ 06 июня 2019

Задача всего этого вопроса - очистить некоторые библиотеки из моих развертываний WAR / EAR.

Я сейчас использую wildfly 15 и у меня есть собственная библиотека (например, # module name "com.test.mathfinder "jar имя файла mathfinder.jar) в качестве модуля.Моя структура развертывания EAR-> WAR.Так как мой jar-файл зарегистрирован / выставлен как модуль, на моем уровне WAR, внутри WEB-INF, я включаю jboss-deploy-structure.xml, который описывает зависимости, которые есть у моего war-файла.Здесь я добавляю имя модуля ("com.test.mathfinder) в качестве зависимости, которую я включил в качестве модуля. Здесь вопрос заключается в том, должен ли я снова включить этот файл jar в мой WEB-INF \ lib?

Все, чего я пытаюсь достичь, - это избегать jar-файлов из моей папки WEB-INF \ lib, которые Jboss уже опубликовали в виде модулей. Например, в моей папке wildfly Джексон является core jar и доступен как модуль, C: \ wildfly-8.2.0.Final \ modules \ system \ layer \ base \ com \ fastxml \ jackson \ core \ jackson-core \ main \ jackson-core-2.4.1.jar

, но то же самоеФайл jackson-core-2.4.1.jar также поставляется вместе с моим WAR-файлом. Можем ли мы просто использовать тот же самый jar-файл, включив зависимость в файл jboss-deploy-structure.xml и прекратить доставку этого избыточного файла?

1 Ответ

2 голосов
/ 07 июня 2019

Можем ли мы просто повторно использовать тот же самый jar-файл, включив зависимость в файл jboss-deploy-structure.xml, и прекратить отправку этого избыточного файла?

Чтобы ответить на ваш вопрос одним словом, "ДА" .

Если зависимости, требуемые вашим приложением, предоставляются JBoss, вам не нужно добавлять эти зависимости во время выполнения (то есть не требуется добавлять в папку lib).Чтобы обеспечить выполнение этих зависимостей в вашем приложении, вы можете добавить зависимость модуля в файл jboss-deployment-structure.xml.

Здесь я добавляю имя модуля ("com.test.mathfinder) в качестве зависимости, которую явключается как модуль. Здесь вопрос заключается в том, должен ли я снова включить этот jar-файл в мой WEB-INF \ lib?

Если вы добавляете зависимость модуля в структуру развертывания jboss, вам не нужно добавлятьэта зависимость в папке WEB-INF \ lib вашего war / ear.

Но есть недостаток вышеуказанного метода, т.е. если ваше приложение переносится с JBoss на любой другой сервер,зависимости, упомянутые в jboss-deploy-structure, не будут доступны приложению на новом сервере. Вам необходимо снова добавить эти зависимости в папку lib.

...