小编典典

Maven 的 pom.xml 中的 pluginManagement 是什么?

all

这是我的 pom 文件的片段。

....
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-dependency-plugin</artifactId>
                <version>2.4</version>                        
                <executions>
                    <execution>
                        <phase>install</phase>
                        <goals>
                            <goal>copy-dependencies</goal>
                        </goals>
                        <configuration>
                            ......
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
...

我通过命令成功使用它

mvn install

但是,当我尝试将它包含在“pluginManagement”标签中时,maven-dependency- plugin当我启动install目标时停止工作。为什么“pluginManagement”标签会改变构建行为?或者我应该使用另一个目标或选项?


阅读 80

收藏
2022-04-22

共1个答案

小编典典

您仍然需要添加

<plugins>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-dependency-plugin</artifactId>
    </plugin>
</plugins>

在您的构建中,因为pluginManagement这只是在所有项目模块之间共享相同插件配置的一种方式。

来自 Maven 文档:

pluginManagement :
是一个可以在侧面插件中看到的元素。插件管理以几乎相同的方式包含插件元素,除了不是为这个特定的项目构建配置插件信息,它旨在配置从这个项目继承的项目构建。但是,这仅配置子级的
plugins 元素中实际引用的插件。孩子们有权覆盖 pluginManagement 定义。

2022-04-22