Как исключить lib из пакета war - PullRequest
0 голосов
/ 30 января 2019

Кто-нибудь знает, как исключить конкретную библиотеку из упаковки в .war

У меня есть следующая зависимость:

<dependency>
    <groupId>com.intel.mtwilson</groupId>
    <artifactId>mtwilson-client</artifactId>
    <version>2.0.3</version>
</dependency>

mtwilson-client-2.0.3.jar в WEB-INFзатем содержит библиотеку (сервлет javax), которая вызывает некоторые проблемы с сервером приложений.Есть ли способ, как исключить эту конкретную библиотеку из упаковки?Я не могу исключить всю банку, установив предоставленный тег.

Заранее спасибо

1 Ответ

0 голосов
/ 30 января 2019

Единственное, что вам нужно сделать, чтобы исключить maven, включая вышеупомянутый jar в WAR, это пометить его как provided.

, так что теперь ваша вышеуказанная зависимость теперь будет выглядеть следующим образом:

<dependency>
    <groupId>com.intel.mtwilson</groupId>
    <artifactId>mtwilson-client</artifactId>
    <version>2.0.3</version>
    <scope>provided</scope>
</dependency>

Примечание: provided не добавит JAR-файл в войну, но добавит путь к классам в финальной войне после сборки, что может вызвать некоторые ошибки во время выполнения, если вы действительнокак-то пропустить JAR при развертывании.

2-й , что вы можете сделать, это использовать <packagingExcludes> параметр конфигурации.

Синтаксис в POM.xml такой:

        <configuration>
          <packagingExcludes>WEB-INF/lib/mtwilson-client-2.0.3.jar</packagingExcludes>
        </configuration>

Вы можете посетить Apache Maven Doc при исключении определенной банки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...