【发布时间】:2013-03-20 10:48:33
【问题描述】:
我遇到过以下“pattern”的maven父子关系: http://yuml.me/3f8dd366
在这个例子中,我们有一个带有 2 个子模块的模块。该模块有一个父 pom “构建模块的父级”,它知道两个子模块是子模块。
子模块根本不知道这个父级认识他们,他们认为他们的父级是名为“依赖管理的父级”的那个。其中有一些常见的配置,比如依赖管理、插件配置、常用属性等。
我的问题:
这是一个“好”的模式吗?意思是它有没有优点/缺点作为看似更直观的孩子父母关系的模式
【问题讨论】:
-
你在哪里找到这个模式?我很想在我的团队中讨论这种方法。实际上,我觉得构建的父级有点奇怪,我认为每个模块都应该知道如何构建自己,项目构建应该是每个模块的构建的组成,但是与更多专家交谈并阅读源代码这种方法可能会改变我的想法!
-
那些箭头看起来真的很混乱(方向),我不认为你一直在使用“父母”。事实上我知道,因为 Maven 不支持多重继承。请澄清您所说的“父母”是什么意思。
-
@mardavi 我们公司的许多项目都有它
-
@djechlin 正如我在下面的 cmets 中已经说过的,其中一个父母确实是一个聚合器
-
当您使用 Bamboo 或 Jenkins 时,最好将构建 pom 与真正的父级分开。在我们公司,每个模块都有单独的构建配置,所以我们真的不希望父 pom 触发所有子构建。