3

将 Maven 项目分解为子模块的主要原因是什么?

4

3 回答 3

2

您是否正在寻找比模块化的好处更多的东西?理想情况下,子模块应该代表一个概念/功能,以便它们在功能上具有凝聚力。

于 2010-11-04T12:54:24.653 回答
2

在等待我的评论得到答复时。

  • 将基于 Java EE 的 maven 项目拆分为子模块的一个原因是,您可以独立地构建 JAR/RAR/WAR/EAR/whatever。

  • 对于常规 Java 应用程序,您可以将功能拆分为单独的 JAR,每个 JAR 都可以是整个项目下的子模块,您可以再次独立构建它们,运行单独的目标/阶段/报告等。

于 2010-11-04T12:56:52.587 回答
2
  • Pom 文件继承 您可以使用根 pom 的 和 部分在所有子项目中保持一致的版本号和配置。因此,如果我有一个列出 300 个项目的聚合器项目,所有项目都使用 apache commons-io,并且我想将它们全部升级到最新版本的 commons-io,我可以在根 pom 的 dependencyManagement 部分更改版本。所有子项目都不需要指定版本。
  • 构建配置文件 在上面的示例中,如果我有 300 个子项目,则单个开发人员可能不会定期处理 300 个子项目中的所有(甚至许多)。您可以创建一个仅指定您经常使用的模块的构建配置文件,如果您有一个持续集成服务器将工件部署到工件存储库,您也将获得团队中的开发人员所做的所有更改,而无需构建所有 300 个模块。
  • 总体组织/清晰度
于 2010-11-04T14:19:06.037 回答