maven-dependency-plugin не выполняет родительское и дочернее (цель) выполнение - PullRequest
0 голосов
/ 11 мая 2018

У меня есть две конфигурации maven-dependency-plugin, одна в моем родительском модуле и одна в моем дочернем модуле Родительское выполнение не запускает только дочернее. Если я вручную копирую (а не перемещаю) родительское выполнение в дочернее выполнение плагина, это работает, но я не хочу этого делать, так как мне нужен родительский конфиг для других проектов / дочерних элементов / модулей. Если я закомментирую выполнение дочернего плагина, он запускает родительское выполнение.

Выполнение моего дочернего плагина основано на ответе здесь

Конфигурация дочернего pom (который всегда работает независимо):

   <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-dependency-plugin</artifactId>
    <version>2.8</version>
    <executions>
           <execution>
            <id>copy-model</id>
            <phase>package</phase>
            <goals>
                <goal>copy</goal>
            </goals>
            <configuration>
                <artifactItems>
                    <artifactItem>
                        <groupId>my.test.pkg</groupId>
                        <artifactId>my-model</artifactId>
                        <classifier>server</classifier>
                        <version>1.0.3</version>
                        <type>jar</type>
                    </artifactItem>
                </artifactItems>
               <outputDirectory>${project.build.directory}/lib</outputDirectory>
            </configuration>
        </execution>
    </executions>
</plugin>

Родительский конфиг (который запускается только при дублировании в дочернем pom):

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-dependency-plugin</artifactId>
    <version>2.8</version>
<executions>
       <execution>
        <id>build-classpath</id>
        <phase>generate-sources</phase>
        <goals>
            <goal>build-classpath</goal>
        </goals>
        <configuration>
             <outputFilterFile>true</outputFileterFile>
             <includeScope/>
             <fileSeparator/>
            <outputDirectory>${project.build.directory}/lib</outputDirectory>
        </configuration>
    </execution>
</executions>
</plugin>

1 Ответ

0 голосов
/ 22 мая 2018

PluginManagement имел родительскую версию pom.xml как версию плагина, так и конфигурацию плагина, это запрещает выполнение в родительском объекте при последующем наследовании в дочернем pom.

Удалена конфигурация / выполнение из pluginManagementи это исправило.

...