наложение войны Maven не исключает зависимости - PullRequest
0 голосов
/ 24 января 2020

У меня есть проект, в котором я пытаюсь наложить предварительно построенную войну на скомпилированный jar из другого модуля и некоторые файлы в военном проекте.

+pom.xml
|
+-+depandancy_dir
| |
| + source.war
|
+-+ jar
| |
| + pom.xml
| + src
|  ...
|
+-+war_dir
  |
  + pom.xml
  + src
    .... no jars

Я хочу исключить некоторые из jar которые сконфигурированы как maven зависимости для jar.

Я попробовал все следующие исключающие строки в pom для войны. нежелательная банка появляется вне зависимости от того.

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <configuration>
                <dependentWarExcludes>**/unwanted-core-1.1.jar</dependentWarExcludes>
                <overlays>
                    <overlay>
                       <groupId>src.war</groupId>
                       <artifactId>base.war</artifactId>

                       <excludes>
                            <exclude>**/unwanted-core-1.1.jar</exclude>     
                            <packagingExcludes>**/unwanted-core-1.1.jar</packagingExcludes>                           
                            <exclude>WEB-INF/lib/unwanted-core-1.1.jar</exclude>     
                            <packagingExcludes>WEB-INF/lib/unwanted-core-1.1.jar</packagingExcludes>                           
                       </excludes>

                    </overlay>
                </overlays>
            </configuration>
        </plugin>

Я запускаю maven под затмением. Плагин войны сообщает о версии Maven-War-плагин: 2.2: война

1 Ответ

0 голосов
/ 27 января 2020

Оказывается, я пытался решить проблему неправильно. Исключение распространяется на зависимость.

  <dependencies>
        <dependency>
        <!-- the jar of custom code -->
            <groupId>my.group</groupId>
            <artifactId>jar</artifactId>
            <version>1.0.0-SNAPSHOT</version>
            <exclusions>
               <exclusion>  <!-- declare the exclusion here -->
                    <groupId>org.unwanted</groupId>
                    <artifactId>unwanted-core</artifactId>
               </exclusion>
            </exclusions>
        </dependency>
        <dependency>
<!-- the war I am overlaying -->
            <groupId>my.group</groupId>
            <artifactId>a.base.war</artifactId>
            <version>1.0</version>
            <scope>system</scope>
            <systemPath>${basedir}/../dependancies/jreport.war</systemPath>
            <type>war</type>
        </dependency>

  </dependencies>

Следующие ссылки помогли мне.

https://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html

Maven: удалить a единичная переходная зависимость

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