首页 文章

单模块与多模块maven项目

提问于
浏览
6

我正在创建一个新的java web项目 . 这个Web应用程序将有许多模块,如核心/公共,业务服务,存储库,安全性,集成,ldap,用户管理......我想知道是否应该将每个模块分成每个maven项目(jar文件)或创建项目包括所有模块的所有java包到单个maven项目中 .

Structure of Multi modules maven project

   mycompany-core
   mycompany-repository
   mycompany-api
   mycompany-usermanagement
   mycompany-business
   mycompany-web

Structure of Single module project:

   mycompany-web
       |___ src
             |____ main
                    |____ java
                            |____ com.mycompany.core
                            |____ com.mycompany.repository
                            |____ com.mycompany.business
                            |____ com.mycompany.controller

什么时候应该应用多模块或单模块项目>请给我一些建议 .

2 回答

  • 1

    我在Maven工作的所有产品都是多模块的 . 这是因为他们往往很大 . 但是,当我创建自己的宠物项目时,它们通常是单模块项目 .

    通常,随着产品的发展,需要将它们组织成多个模块 . 有些项目从单个模块开始,随着它们的增长而分开 . 由具有更多经验的开发人员创建的其他人已经分开,因为开发人员已经知道代码将如何增长以及如何组织代码 .

    具体来说,从您的列表“核心/公共,业务服务,存储库,安全性,集成,ldap,用户管理”,我将“公共”分成它自己的模块,因为它闻起来可以在其他项目上重用 . 其他部分都可以融入一个模块,但我需要更深入地了解项目 .

  • 5

    这取决于您的要求 . 如果要使用 .sh.bat 运行此命令,则应该具有单个目标(单个 jar 与其他库) .

    如果您的项目构建为 API ,最好将您的构建作为多模块构建 .

相关问题