穿越Java - 开发框架篇 第二章 项目构建工具 - Maven | 第7节 Maven分模块构建

开发环境

基于:IntelliJ IDEAMaven构建工具JDK1.8SpringBoot 2.3.4Spring4.3.28编写。

官人如需使用 IDEA 请阅读教程:IntelliJ IDEA
官人如需使用 Maven 请阅读教程:Maven 构建工具的下载与安装

更多干货

请参考:《穿越 Java 之 语法基础篇》 系列文章
请参考:《穿越 Java 之 Web基础篇 》系列文章
请参考:《穿越 Java 之 开发必备框架篇 》 系列文章
请阅读:《穿越 Java 之 SpringBoot框架篇》系列文章
请阅读:《穿越 Java 之 SpringCloud微服务架构篇》 系列文章

场景1

  • 整个大的项目 PROJ 分成了 ModuleA 、 ModuleB, B依赖A。
    A必须开发完以后 maven install 项目B才能编译通过。随着模块更多,加入了ModuleC , C依赖B。
    C要想正确编译,先安装A,再安装B,它才能编译通过。

  • 所以,我们需要一种机制:
    在整体项目上执行各种操作的时候,项目下的各模块自动执行相应的操作。
    在 PROJ 上执行 maven install:
    项目的聚合

场景2

  • 项目是基于Spring技术栈来开发的, ModuleA 、 ModuleB、ModuleC很可能是不同的项目组来开发的,如何统一管理项目中的依赖呢?其次,重复的配置怎么办?
  • 所以,也需要一种机制
  • 让PROJ项目来做整体的版本控制和公共依赖的配置,这样的话,它下面的子模块只需要差异化配置即可。
    项目的继承

父项目工程

  • 不包含任何代码,也就是说不包含 src 目录
    在这里插入图片描述

  • 其打包方式是 pom<packaging>pom</packaging>如下图:
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aN08vuA1-1602212199791)(imges/image-20201009093545892.png)]
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lOME2tDK-1602212199793)(imges/image-20201009094001401.png)]

  • 做一些配置,如 版本控制 或一些公共的依赖。
    在这里插入图片描述

子项目工程

  • 子工程还可以是另外的一个 pom 类型的工程:
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Y3WpeP9A-1602212199797)(imges/image-20201009093857311.png)]
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-96HCoCad-1602212199799)(imges/image-20201009094655633.png)]
  • 最后测试一下执行1009的 install操作。
    在这里插入图片描述
    在这里插入图片描述
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值