如何使组件插件在空组件上失败?

时间:2013-01-11 16:09:19

标签: maven maven-assembly-plugin

我有一个大型的多模块项目。该项目中的许多模块需要创建辅助工件以用于构建项目分发。我创建了一个共享的程序集描述符,它工作正常。

我当前的问题是某些模块没有任何由描述符拾取的内容,这会导致程序集插件失败,因为程序集是空的。

当程序集为空时,有没有办法防止程序集插件翻倒?我查看了单个目标和参数的参数。找不到任何东西。我不想在我的单个模块上手动启用/禁用此程序集,我想在父模块上配置程序集,而没有任何内容的子模块可以在程序集上跳过创建而不是失败。< / p>

1 个答案:

答案 0 :(得分:0)

您可以将程序集插件配置移动到父项中的<pluginManagement>部分,然后仅在需要它的子模块中指定程序集插件。

父:

<pluginManagement>
  <plugins>
    <plugin>
        <groupId>org.apache.maven.plugins</plugin>
        <artifactId>maven-assembly-plugin</plugin>
        <version>${your.version}</version>
        <configuration>
           <!-- whatever you have here now -->
        </configuration>
        <executions>
           <!-- whatever you have here now -->
        </executions>
    </plugin>
  </plugins>
</pluginManagement>

需要创建程序集的子项:

<build>
  <plugins>
    <!-- Pull in config from the parent -->
    <plugin>
        <groupId>org.apache.maven.plugins</plugin>
        <artifactId>maven-assembly-plugin</plugin>
    </plugin>
  .....
  </plugins>
  .....
</build>