gpt4 book ai didi

maven-2 - 如何在一个子模块中覆盖 maven-release-plugin 配置

转载 作者:行者123 更新时间:2023-12-04 05:57:45 24 4
gpt4 key购买 nike

我有一个多模块 Maven 构建,其中一个子模块需要一个额外的目标才能作为发布的一部分执行。但是看起来好像子模块中的 maven-release-plugin 的任何配置都被忽略了,而支持父模块中的默认配置。

这是子模块的片段。插件配置在父 pom 的 pluginManagement 部分中是相同的,但没有自定义元素。

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.1</version>
<configuration>
<tagBase>http://mycompany.com/svn/repos/myproject/tags</tagBase>
<goals>deploy myCustomPlugin:myCustomGoal</goals>
</configuration>
</plugin>

那么子模块是否有可能覆盖父模块的配置并添加额外的目标?

Maven 版本 2.2.1

最佳答案

使用combine.children="append" combine.self="override"
父 POM

<configuration>
<items>
<item>parent-1</item>
<item>parent-2</item>
</items>
<properties>
<parentKey>parent</parentKey>
</properties>
</configuration>

child 绒球
<configuration>
<items combine.children="append">
<!-- combine.children="merge" is the default -->
<item>child-1</item>
</items>
<properties combine.self="override">
<!-- combine.self="merge" is the default -->
<childKey>child</childKey>
</properties>
</configuration>

结果
<configuration>
<items combine.children="append">
<item>parent-1</item>
<item>parent-2</item>
<item>child-1</item>
</items>
<properties combine.self="override">
<childKey>child</childKey>
</properties>
</configuration>

this blog了解更多详情

关于maven-2 - 如何在一个子模块中覆盖 maven-release-plugin 配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6306626/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com