合并Maven中的配置值

时间:2012-08-17 08:20:17

标签: maven pom.xml

我有一个Maven子模块,需要将一个字符串附加到配置选项的现有值。父模块如下所示:

<!-- in parent -->
<plugin>
   ...
   <configuration>
       <someOption>A</someOption>
   </configuration>
   ...
</plugin>

子模块需要在someOption附加一个字符串,这样效果就像子模块已经完成一样

<!-- in child -->
<plugin>
   ...
   <configuration>
       <someOption>A B</someOption>
   </configuration>
   ...
</plugin>

我查看了combine.*属性,但似乎没有一个属于我想要的。有没有办法做到这一点?是否可以从孩子那里访问父母的someOption值?

1 个答案:

答案 0 :(得分:2)

我怀疑你将不得不回到房产。

<!-- in parent -->
<project>
  ...
  <properties>
    <foo-plugin.config.someOption>A<foo-plugin.config.someOption>
  </properties>
  ...
  <build>
    ...
    <plugins>
      ...
      <plugin>
        ...
        <configuration>
          <someOption>${foo-plugin.config.someOption}</someOption>
        </configuration>
        ...
      </plugin>
      ...
    <plugins>
    ...
  </build>
  ...
</project>

然后孩子根据父

重新定义属性
<!-- in child -->
<project>
  ...
  <properties>
    <foo-plugin.config.someOption>${foo-plugin.config.someOption} B<foo-plugin.config.someOption>
  </properties>
  ...
</project>

不理想,但我现在能看到的唯一解决方案