具有不应继承的定义的父 pom
Posted
技术标签:
【中文标题】具有不应继承的定义的父 pom【英文标题】:Parent pom with definitions that shouldn't be inherited 【发布时间】:2021-08-04 16:57:08 【问题描述】:我正在尝试构建一个父 pom 。我没有使用dependencyManagement 或pluginManagement。我希望所有的孩子都继承一切。
但是,父项目本身有一个特定的构建要求,我正在使用 maven-jar-plugin。我不希望孩子继承这块土地。有没有办法指出子项目不应该继承的部分?
但是,子项目做 也使用 maven-jar-plugin 用于另一个部分。基本上,我有
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<executions>
<execution>
</execution>
</executions>
<configuration>
<archive>
</archive>
</configuration>
</plugin>
我希望配置部分被所有子代继承,但执行部分只给父代
【问题讨论】:
我不认为你是不可能的。但我只想指出,父级只能是 POM 类型,因此它通常对 JAR 插件本身没有太多用处。 是的,你是对的。我意识到。我试图将我们的“普通”罐子变成父母,但意识到我不能那样做。所以我转而将父项目设为“空”项目 【参考方案1】:将配置放入<pluginManagement>
。
将执行放入<plugins>
。
使用<inherited>false</inherited>
。
【讨论】:
看起来inherited
标签是我需要的。但是通过 pluginManagement 上的配置,子项目仍然必须声明该插件,对吗?为什么建议不要将其保留在插件部分,而是使用默认的 inherited
值?
你也可以试试。通常,您不需要声明 jar 插件,因为它是标准 jar 生命周期的一部分。以上是关于具有不应继承的定义的父 pom的主要内容,如果未能解决你的问题,请参考以下文章