Maven2:多重继承或配置文件选择

Maven2:多重继承或配置文件选择,maven,maven-2,Maven,Maven 2,我有一个主/子pom项目,有许多子模块。对于一些子模块,我有一系列只有它们才需要执行的任务,基本上是读取属性文件来配置jboss部署位置 目前,我已经将构建部分复制到了一些POM中,这已经开始敲响警钟。我真的应该写一次,并多次使用它 这使我走上了哲学的道路 a) 我相信我可以在主POM中创建一个概要文件,并且在运行子POM时使用父POM定义的功能启用此概要文件。这将保留当前结构,而不是一个父级:多个子级。它还提出了一个问题,我是否可以在子POM中激活该配置文件,以便在子POM上进行构建的人不必使

我有一个主/子pom项目,有许多子模块。对于一些子模块,我有一系列只有它们才需要执行的任务,基本上是读取属性文件来配置jboss部署位置

目前,我已经将构建部分复制到了一些POM中,这已经开始敲响警钟。我真的应该写一次,并多次使用它

这使我走上了哲学的道路

a) 我相信我可以在主POM中创建一个概要文件,并且在运行子POM时使用父POM定义的功能启用此概要文件。这将保留当前结构,而不是一个父级:多个子级。它还提出了一个问题,我是否可以在子POM中激活该配置文件,以便在子POM上进行构建的人不必使用a-P命令行选项

b) 我可以将现有的父/主POM更改为祖父母,并将主POM继承到新的父POM中,将属性reading/jboss deploying facilities添加到新的父POM中。然后,需要此功能的子POM将从新的父级继承,这给了我祖父-父亲-儿子继承权。这意味着进行构建的人不需要记住命令行,而需要付出另一个级别的内在代价

问题是,哪种方法是“maven方式”?

不幸的是,maven不支持选项a)。我有一个类似的情况需要解决,并尝试了在父位中定义的子启用配置文件,结果发现它不起作用

我不知道是否有官方的最佳实践,因为我以前在狩猎时没有找到。我使用了祖父母/父母/孩子POM和
的组合

我会先在你父母的POM中尝试
。如果这不能完全满足需要,额外的POM水平可能会起作用。祝你好运

干杯。是我的路。我知道这一点,我在主POM中有它。我只是被其他两个选项蒙蔽了双眼,看不到显而易见的东西。