189 8069 5689

maven中怎么重构项目

这篇文章给大家介绍maven中怎么重构项目,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

网站建设、网站设计服务团队是一支充满着热情的团队,执着、敏锐、追求更好,是创新互联的标准与要求,同时竭诚为客户提供服务是我们的理念。创新互联把每个网站当做一个产品来开发,精雕细琢,追求一名工匠心中的细致,我们更用心!

user-system拆分成:

  • user-web

  • user-service

  • user-dao

  • user-common

我们对其拆分后很有可能存在多个子项目中同时依赖某个jar包,如果使用不当可能会导致每个模块使用的版本不一样,所以想想能不能有什么方式来解决这类问题呢?

答案:能。但是得先了解两个概念:聚合和继承。

聚合

所谓的聚合就是我们如果想一次性构建多个项目模块,那我们就需要把这些项目模块进行聚合。

配置模板

    项目模块一    项目模块二    项目模块三    项目模块...

使用方式

比如我们对user-web、user-service、user-dao、user-common四个项目模块进行聚合。

    user-web    user-service    user-dao    user-common

注意:其中module的路径为相对路径。

这样就解决了我们项目模块的聚合,我们再来看看maven是如何来解决由于重复依赖导致版本不一样的问题。

继承

继承为了消除重复,我们把很多相同的配置提取出来,例如:grouptId,version等 。

继承的配置

    maven-demo    com.tian    1.0-SNAPSHOT

继承代码中定义属性

继承代码过程中,可以定义属性,例如:

   UTF-8   4.13.1   0.0.1-SNAPSHOT

访问属性的方式为${junit.version},例如:

            maven-demo        com.tian        1.0-SNAPSHOT        4.0.0    user-web                        junit            junit                        ${junit.version}            

这样我们就可以使用到上面定义的属性junit.version=4.13.1。

父模块用dependencyManagement进行管理

由于项目模块较多,所以我们又抽象了一层,抽出一个parent来管理子项目的公共的依赖。为了项目的正确运行,必须让所有的子项目使用依赖项的统一版本,必须确保应用的各个项目的依赖项和版本一致,才能保证测试的和发布的是相同的结果。

                 junit        junit        ${junit.version}        test           

这样的好处是子模块可以有选择性的继承,而不需要全部继承。

maven中怎么重构项目

这样做的好处:统一管理项目的版本号,确保应用的各个项目的依赖和版本一致,才能保证测试的和发布的是相同的成果,因此,在顶层pom中定义共同的依赖关系。同时可以避免在每个使用的子项目中都声明一个版本号,这样想升级或者切换到另一个版本时,只需要在父类容器里更新,不需要任何一个子项目的修改;如果某个子项目需要另外一个版本号时,只需要在dependencies中声明一个版本号即可。子类就会使用子类声明的版本号,不继承于父类版本号。

聚合和继承的关系

在前面我们构建多模块项目中,关系如下

maven中怎么重构项目

配置我们之前安装好的maven目录、maven下面的setting.xml以及本地仓库目录。然后Apply--->OK。

maven中怎么重构项目

这样我们就把Maven集成到我们的IDEA中来了。

编译运行项目

我们可以在父项目中对所有子项目进行编译、打包等。我们就来对所有子模块进行打包。

maven中怎么重构项目

也可单独对某个子项目进行打包等操作。比如我们对user-common进行clean。

maven中怎么重构项目

然后把src目录删掉,创建子项目:

选中user-parent项目,右键,选中New-->Module

maven中怎么重构项目

next。填写子项目名称,我们这里创建一个user-web的子项目:

maven中怎么重构项目

点击Finish:

maven中怎么重构项目

已经添加了modules,同时把我们的user-web添加进去了。

同样方法,我们就可以创建更多字项目了:

再看看user-parent中的pom.xml文件内容:

maven中怎么重构项目

关于maven中怎么重构项目就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。


本文名称:maven中怎么重构项目
文章路径:http://cdxtjz.cn/article/jpcgge.html

其他资讯