我有一个号码的家项目建立各种组成的一个插件框架的第3次缔约方应用程序。我有一个主项目,该项目,采用聚合(<modules> 元素),包括所有的分项目。这个主项目,还要求该专家汇编。我现在可以建立所有子的项目和汇编的复制他们的产出/文件/来源/资源等到主建立目录,然后zip所有这些文件达成一个单一的分配。我这样做的命令:

会为了寻求简便包大会:会

这所有的伟大工程。我现在想通过这个压缩文件成为另一个家插件,它将打开它,并创建一个自定义的清单文件,其中列出的邮政编的内容,然后插入这一清单,文件回到拉链文件。我写插件做到这一点,它工作正常。

我的问题是把这个插件由专家作为一部分的建立过程。

插件需要从输的汇编,但似乎并不是无论如何运行的一个插件之后,汇编器。

任何人都可以帮忙吗?

有帮助吗?

解决方案

假定大会已经定义为创建大会的目标/集会,你只需要结合执行的插件阶段 标准生命周期, 所以你可以运行 mvn install (例如)和有插件的执行期,生命周期。

  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-assembly-plugin</artifactId>
    <executions>
      <execution>
        <id>generate-assembly</id>
        <phase>package</phase>
        <goals>
          <goal>single</goal>
        </goals>
        <configuration>
          <!--your configuration here -->
          ...
        </configuration>
      </execution>
    </executions>
  </plugin>

你然后绑定的执行您插到一个稍后阶段(说一体化试验),使其能够访问大会的文件:

  <plugin>
    <groupId>your.plugin.groupId</groupId>
    <artifactId>your-artifactId</artifactId>
    <executions>
      <execution>
        <id>mung-manifests</id>
        <phase>package</phase>
        <goals>
          <goal>your-goal-name</goal>
        </goals>
        <configuration>
          <assemblyDirectory>${project.build.directory}/assemblies</assemblyDirectory>
        </configuration>
      </execution>
    </executions>
  </plugin>

使用这种方法每一个插件将执行的相关阶段(包)时运行 mvn package (或稍后阶段,如安装、检验、部署...).

请注意您的脚应该定义 大会插件 确保执行之后(不论有关的订单,如果他们是在不同阶段,只有当在相同的阶段)。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top