菜鸟的maven多模块开发学习总结

说明

更新时间:2020/9/9 17:03,更新到了统一依赖模块管理

本文主要对maven管理里面的多模块开发进行学习与记录,本文会持续更新,不断地扩充

本文仅为记录学习轨迹,如有侵权,联系删除

一、新建父工程

创建springboot项目
在这里插入图片描述
下一步将type换成pom
在这里插入图片描述
其余的就跟正常创建springboot项目一样了,最后创建好的项目是没有src目录的,而且maven父工程必须遵守以下两点要求:

  1. packaging必须是pom
  2. src目录必须删除

在这里插入图片描述

二、创建子工程

主要创建common、dao、server、web(controller)4个子模块

maven模块的创建

common、dao、server这些是maven模块,当然web模块是springboot项目模块,也可以属于maven,这里就细分一下,web分到springboot模块
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
common、dao、server模块也是这样子创建,创建完后,父工程的pom下会有对应的module
在这里插入图片描述
然后查看这三个模块的依赖,会发现里面的有一个parent标签,存放的就是关联的父模块信息
在这里插入图片描述

springboot模块的创建

注意web子模块是springboot项目,创建模块的时候,也正常创建模块即可
在这里插入图片描述
修改完的pom文件
在这里插入图片描述

然后在父模块的pom中添加模块
在这里插入图片描述
这样子工程(子模块)也创建完成

三、模块间的依赖关系

首先是common模块,这个模块放的是一些通用的公共模块,这个模块不需要依赖其他的模块,所以可以不需要添加任何依赖。
然后是dao模块,这个模块主要是负责跟数据库打交道的,用于查询数据库,它需要common模块的依赖,所以需要在dao这个模块中填加上common的依赖
在这里插入图片描述
然后是server模块,这个模块主要负责处理相关的业务逻辑,它需要common模块的依赖和dao模块的依赖,所以需要添加这两个模块的依赖
在这里插入图片描述
最后是web模块,或者叫controller模块吧,用于存放一些接口,它需要的模块是common和server模块,所以需要将这两个依赖引入
在这里插入图片描述

四、统一依赖管理

这样其实已经创建好多模块了,但会有一个问题,因为所有的子模块都是父模块的,所以,父模块pom里面有的坐标依赖,在每一个子模块都会被引入
在这里插入图片描述
但实际开发中,子模块可能只是需要父模块里面的某一个依赖而且,而不是全部依赖,这时有几种方法,可以自己在子模块的pom中自己独自引入依赖即可,这样的话可以版本管理会很乱,于是就有下面的父模块依赖管理

首先在父模块中添加依赖管理器标签dependencyManagement,里面添加依赖,此时子模块不会引入里面的依赖,后面子模块需要用到哪个模块,再按需引入即可,例如在dependencyManagement里面填了一个hutool的坐标依赖,此时,common里面需要用到hutool就可以按需引入即可
在这里插入图片描述
假设common模块需要用到hutool这个坐标依赖,就可以在common引入这个依赖即可,并且版本跟父模块一致
在这里插入图片描述
这样就是实现了依赖的模块管理。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值