首页 > 解决方案 > 如何在不继承父 pom 的情况下重用插件配置

问题描述

我们有一个带有根 pom 的多模块项目。

    Root
    |->a
    |->b
    |->c
    |->d

a、b、c 和 d 的父 pom 是“X”,它不属于我们,所以我不能在这里做任何修改。

我也不能改变我的父母,因为我所有的孩子项目都依赖于“X”。

我面临的问题是我在所有子模块中复制相同的插件配置,因为我无法将配置添加到集中父级并继承相同。

谁能建议我如何在所有子模块中重用插件配置而不是复制它?

标签: maven

解决方案


如果所需的插件配置在 X 中,那么您应该什么都不做,因为插件是继承的。

如果 X 没有所需的插件配置,您可以创建一个 pom 作为 A、B、C、D 模块的公共根:

层次结构将是:

X
|__ MY_CUSTOM_ROOT
    |__ A
    |__ B
    |__ C
    |__ D 

MY_CUSTOM_ROOT将包含将自动继承的插件定义 A、B、C、D

如果您想确定究竟继承了什么,请使用mvn help:effective-pom


推荐阅读