我有一个 Maven 多模块项目,我希望我可以使用配置文件根据 POM 属性为两种情况自定义插件的配置,但事实证明配置文件只能由外部属性激活,而不能由 POM 属性激活,所以现在我是寻找另一种方式来拥有不同的项目配置,我想得到一些想法。这是我的设置
我有一个 3 级树:一个根父 POM X 有许多子模块 A、B、C ......这些模块中的每一个都有 2 个子模块 1 和 2(所以 A1、A2、B1、B2 等)
我需要做的是为所有类型 1 的模块和另一个为类型 2 的所有模块自定义叶模块的配置。我试图避免使所有 1 共享一个共同的父级和所有 2 的另一个(不同的)共同父级,因为1 和 2 已经共享了来自其各自父级(例如 A 或 B)的一些数据。如果没有其他办法,我会将所有公共数据从 A 下推到 A1 和 A2(不理想,DRY 原则),并使所有 1 都从一个公共 1 父级继承,但我试图避免这种情况。就像我说的那样,我尝试在树的叶子中设置一个属性,并使用一个属性指定它是 1 还是 2,然后将两个不同的配置文件放在祖父母 POM X 中并根据该属性激活配置文件. 这没有用。
还有其他建议吗?