如何将构建任务移动到父POM中

时间:2008-11-05 01:27:08

标签: maven-2

我的ejb项目有一个POM。在其中我添加了一个maven-antrun-plugin执行步骤,以在验证阶段构建websphere ejb存根。这是有效的,但是非常冗长,因为我需要为许多其他ejb项目添加类似的步骤,我想将公共部分移动到所有ejbs的父POM。

我的第一次尝试是将整个构建标记移动到父POM,但是在父项的安装/部署期间失败,因为对父POM执行了验证步骤,而不仅仅是针对子POM。

我的第二次尝试涉及指定ejb:验证阶段。这部分成功,因为父POM是可部署的。但是,没有为子POM执行验证步骤。

我尝试了其他几种变体,包括指定ejb,ejb:ejb的阶段,并在插件定义中指定true。

这样做的正确方法是什么?

1 个答案:

答案 0 :(得分:1)

如果您将配置放在父级的pluginManagement部分中,那么它将不会在那里运行。然后在孩子中你只需要绑定antrun插件,它将继承执行配置并运行。这很好,因为您可以控制哪些孩子继承了这些值。

您可以在我在此处写的章节中看到示例:http://www.sonatype.com/book/reference/optimizing.html#d0e8621