覆盖poms.xml中不同级别的插件配置

时间:2014-04-09 16:43:40

标签: java maven maven-3

我有maven项目并认为它看起来像那样

pom-parent
--pom child1
--pom child2
  • 在pom parent中,我已在默认构建中为surfire plugin定义了插件配置。 在pom parent中,我已将integration-test定义为surfire plugin但配置不同。
  • 在childs pom中,我通过在配置标记默认构建中添加surfire plugin(不在配置文件部分中)来覆盖默认构建中combine.self的配置(不在配置文件部分中)。

我的问题是,如果我运行mvn clean install -Pintegration-test每个级别的surfire plugin配置是什么?

  • pom parent =>(默认或来自个人资料?)pom
  • pom child1 =>(个人资料 配置将被默认子配置覆盖?)
  • POM child2 => (与child1相同?)

1 个答案:

答案 0 :(得分:0)

谷歌搜索后,我得到了我的问题的答案。这个 article 非常有助于了解maven wokrs中的合并方式。

非常有帮助的命令 mvn help:effective-pom 从父级开始。

基本上我的问题的答案是。

父pom将在配置文件中定义配置,但是当我们在标签<pluginManagement>中为插件定义配置文件时,它将继承给所有子节点(即使他们没有在配置文件中定义插件配置,但是他们在默认plugin标签中的简单configuration - &gt; build空间中定义它,并根据我们在儿童游戏中应用的上述文章和策略与他们的配置合并。

我回家有一天会帮助有同样问题的人。