题
我有一个号码的家项目建立各种组成的一个插件框架的第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
(或稍后阶段,如安装、检验、部署...).
请注意您的脚应该定义 后 大会插件 确保执行之后(不论有关的订单,如果他们是在不同阶段,只有当在相同的阶段)。
不隶属于 StackOverflow