【发布时间】:2017-03-23 03:07:14
【问题描述】:
我很难理解何时使用复合构建与多模块构建。似乎两者都可以用来实现类似的事情。
多模块构建还有有效的用例吗?
【问题讨论】:
标签: gradle
我很难理解何时使用复合构建与多模块构建。似乎两者都可以用来实现类似的事情。
多模块构建还有有效的用例吗?
【问题讨论】:
标签: gradle
在我看来,多模块构建是一个一起构建和发布的单一系统。构建中的每个模块都应具有相同的版本,并且可能由同一团队开发并提交到单个存储库(git/svn 等)。
我认为复合构建仅用于开发,并且在开发人员在两个或多个系统上工作时使用(可能在具有不同版本的不同存储库中)周期/版本)。例如:
我不认为复合构建应该致力于源代码控制或通过持续集成构建。我认为 CI 应该使用来自 repo 的 jars(例如 nexus)。基本上我认为复合构建与m2e中的resolve workspace artifacts checkbox具有相同的目的
请注意restrictions on a composite build 之一是它不能包含另一个复合构建。所以我认为将多模块构建提交到源代码控制并使用复合构建将它们在本地连接在一起仅用于开发会更安全。
这些是我对如何使用这两个功能的看法,我确信上述情况存在有效的例外
【讨论】: