我是否必须在Maven配置文件中复制插件配置?

时间:2016-04-18 16:10:21

标签: java maven rpm maven-profiles

我使用rpm-maven-plugin创建一个安装我的java项目的RPM。我需要为CentOS 5和CentOS 7构建RPM。我已经使用配置文件来设置属性,这些属性包含两者之间不同的RPM依赖关系的名称,然后在rpm插件中引用这些属性。

我现在还需要根据cent5 vs cent7配置文件更改RPM所放置的文件(分5仍使用init脚本,分7已经转到带有systemd的单元文件)。我不能通过设置属性来想到一个简单的方法,我需要在每个中包含不同的文件映射。我是否需要在两个配置文件中复制我的(长)RPM插件配置才能获得更改?这感觉很危险,因为插件配置很长,重复将不可避免地导致开发人员在未来进行更改而忽略其他更改。有没有办法只使用配置文件添加到插件配置?

跨maven配置文件管理复杂插件配置的小变更的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

使用Maven的aggregation (with sub-modules)

  

继承和聚合通过单个高级POM创建一个很好的动态来控制构建。您经常会看到父项和聚合器都是项目。

inheritance (with a parent POM)

  

父项目是将其值传递给其子项目的项目。多模块项目只管理一组其他子项目或模块。

另见answer to Maven and Profiles: ...