推荐的拆分 Maven 项目的解决方案?

2024-03-10

在 Maven 中拆分大型企业项目的最佳方式是什么?

很容易理解如何像这样垂直划分事物......

  1. 你有一个 DAO 项目
  2. DAO 项目是一个依赖项 服务项目
  3. Service 项目是一个依赖项 的网络项目。

有没有人对 Maven.m 中大型项目的分区/拆分最佳实践有意见


一些对我有帮助的事情

  • 使用多模块项目适用于相关的项目并且仅适用于相关的项目。仅存在于单个 EAR 中的 EJB 是这种情况的候选者。 EJB 使用的 bo 层而不是客户端应用程序。
  • 每个 pom 一个工件,每个多模块项目一个可部署的工件不要浪费时间试图解决这个问题。
  • 创建依赖 pom包括常见的依赖关系集。这样您就可以将 DAO、jdbc 驱动程序和 ORM 工具包含在单个依赖项中。它还使得将数十个项目升级到最新版本的 ORM 或 DAO 变得更加容易。
  • 创建构建器项目仅用于运行程序集和创建部署集。这将使项目的多个部分保持同步。组装大型复杂的企业应用程序通常非常复杂,您需要混合使用 Maven、Shell 脚本和/或 ant:run 任务以及数十个配置文件。将混乱放在远离代码的项目中,可以在混乱蔓延之前将其遏制住。
  • 创建测试项目供持续集成使用。在这些 pom 中定义您的 Web 和应用程序服务器以及测试部署信息。使用父项目和通用属性文件将使测试部署更改变得更加容易。
  • 仅在父pom中定义distributionManagement是否可以使所有子项目成为它的子项目(或孙项目)。
  • 尽量不要依赖大文件(EAR、WAR)在每次构建时都被填充到您的存储库中。不再需要在每个快照上将 175mb 的 WAR 推送到 nexus,从而缩短了我们的构建时间。
  • 尝试尽可能少地定义事物。 DRY 构建是一个快乐的构建。拥有 30 个源版本为 1.5 的 pom 或使用 junit 3.8.2 的 30 个 pom 将使升级到 java 6 或 junit 4.4 变得更加困难。

希望这可以帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

推荐的拆分 Maven 项目的解决方案? 的相关文章

随机推荐