【问题标题】:Maven3 child project does not reference from `pluginManagement` but inherit from parent projectMaven3 子项目不从 `pluginManagement` 引用,而是从父项目继承
【发布时间】:2021-07-14 10:23:18
【问题描述】:

我的项目树喜欢

parent project (plugin A: version=1.0)
  child project (pluginManagement(plugin A: version=2.0), (plugin A: without version))

示例

父母
<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-surefire-plugin</artifactId>
  <version>2.22.2</version>
</plugin>
孩子
...
<plugin>
  <artifactId>maven-surefire-plugin</artifactId>
</plugin>
...
<pluginManagement>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-surefire-plugin</artifactId>
      <version>3.0.0-M5</version>
    </plugin>
  </plugins>
</pluginManagement>

将使用最终版本 2.22.2

而且我不能更改父 pom.xml,它就像 spring-boot-starter-parent

如何使用pluginManagement指定的版本?

【问题讨论】:

    标签: maven plugins pom.xml


    【解决方案1】:

    通过不在父 POM 的 &lt;plugins&gt; 部分中指定版本。在父 POM 中使用 &lt;pluginManagement&gt;

    【讨论】:

    • 谢谢你的帖子,但我无权更改父pom文件,它就像spring-boot-starter-parent
    • 那么不能使用pluginManagement覆盖版本,需要直接在&lt;plugins&gt;中的&lt;plugin&gt;定义中设置。
    • 谢谢,但如果这是唯一的方法,我觉得很奇怪。
    • 直接定义总是比pluginManagement强。这也适用于父 POM 中的直接定义。
    猜你喜欢
    • 1970-01-01
    • 2011-03-01
    • 2017-04-13
    • 1970-01-01
    • 1970-01-01
    • 2019-12-19
    • 2012-08-27
    • 1970-01-01
    • 2013-08-09
    相关资源
    最近更新 更多