当前位置:   article > 正文

maven项目多工程结构良好体验_maven 同样项目,各种业务

maven 同样项目,各种业务

       在项目开发工程中,根据业务功能不同,会划分功能模块,需要建立多个工程。不同工程可能由不同的人来开发,可能会引用到相同组件的不同版本。随着项目推进,存在需要版本分支的需求。那我们要怎么把maven用好,方便管理呢?

        针对以上需求,我大致整理了一下,在实际项目开发过程中主要存在以下3个问题:

        1.源代码封版本,到了某个阶段,提交一个相对稳定的版本,根据版本规划,存在多版本同步开发或者运维。希望能够方便的修改整个产品的源码版本号,不用每一个组件工程都去修改。

        2.组件的版本号提升。多个项目之间存在依赖关系,被依赖组件会根据版本规划存在多个不同版本号。希望能够方便的修改整个产品的版本号,不用每一个组件工程都去修改。

        3.各个组件可能存在引用相同第三方组件不同版本号的情况。需要规范同一产品依赖组件版本号。

        针对以上3个问题,我们应该怎么建立组件的工程呢?

        按照maven规范建立工程及模块。通俗说就是父子工程。

        整个产品建立一个父工程,命名为XXX-parent,类型为pom工程。其他业务组件继承该工程,定义为模块工程。在父工程的pom中通过<version>标签去定义版本。因为父子工程结构,子工程就自动继承了版本号。通过修改父工程pom的版本号,发布后,就简单的实现了组件库中不同版本组件的入库。解决了问题2.

        因为是父子工程的结构,子工程代码是在父工程的下级目录,源代码提交版本库后。可以在父工程做版本分支,不管有多少个子工程,整个项目一下就实现了版本的分支(标记)功能。解决了问题1。

        在父工程pom中定义<dependencyManagement>标签,子工程如果引用了对应的组件,则不能指定版本号。版本号为父工程中指定的版本号。这样多个子工程引用了同一个组件,则版本无法自定义,由父工程中指定版本的组件决定。解决了问题3。

        后续将单独写文章举例。


声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Guff_9hys/article/detail/837083
推荐阅读
相关标签
  

闽ICP备14008679号