7.学习笔记-Maven进阶(P75-P89)-进度(p75-P80)

1.MAVEN-01-分模块开发的意义

(一)分模块开发意义

模块可以按功能划分,也可以按团队划分,所以把domain的方法抽取出来,进行共享,从而提高开发 的效率。

(1)分模块开发的意义:将原始模块按照功能拆分成若干个子模块,方便模块间的相互调用,接口共享。

(二)分模块开发与设计

把maven_02_ssm里面的domain模块 移动到maven_03_ssm,现在02缺少了domain里面的book类会报错,所以要怎么在02模块调用03模块的domain呢?

我们把03的pom.xml的坐标引入到02的pom.xml,再刷新maven就不会报错了

所以再02的maven的lifecycle中点击compile(编译)。编译失败,显示找不到02的maven引用03依赖。






正确的做法:安装03的maven仓库(点击生命周期的install),最后对02再进行maven的compile。


补充:例子二,把dao也分模块化,创建一个新的文件夹04

然后把03的pom.xml的maven_03_pojo的依赖拷到04的pom.xml的依赖下,刷新一下maven。04install后(把04的maven依赖下载到02的maven本地仓库下),再对02进行complie运行。











(三)maven-03-依赖传递







(四)Maven-04-可选依赖与排除依赖

为了避免依赖冲突问题,可以对该模块的项目进行隐藏。

(1)可选依赖是隐藏当前工程所依赖的资源,隐藏后对应资源不具有依赖传递性。简而言之,就是现在的模块不想给别人用,隐藏自己的依赖,让别人不知道我用过什么(隐私)。自己的东西被别人用。

(2)排除依赖是隐藏当前资源对应的依赖关系。简而言之,用了别人的东西,发现不太好用,想把它排除掉。(体验尝试 做排除)。自己用别人的东西。

(五)Maven-05-聚合

打包方式,每个maven工程默认的打包方式是jar。web工程打包方式是war。聚合工程打包方式是pom。

设置管理的模块名称。使用路径名称命名(如何找路径,pom文件出发的上一层文件)

先构建没有依赖关系的工程,再构建有依赖关系的工程。


聚合:用一个工程(即聚合工程)管理多个工程,快速构建的方式。

(六)继承与聚合

继承:描述两个工程之间的关系(父工程、子工程),子工程可以继承父工程的配置信息,常见于依赖关系的继承。









继承的作用:简化配置,减少版本冲突。


01作为父工程,02-03-04作为子工程,继承关系在子类中描述。

(1)在02中配置当前工程 继承来自parent的工程

(2)把02(子工程)的依赖复制粘贴到父工程中。子工程被复制过去的依赖删除,保留父工程的依赖即可。

(七)Maven-属性








在这里插入图片描述

相关推荐
点心的游戏开发世界4 小时前
GDScript 入门笔记(十一):Lambda 与匿名函数
开发语言·笔记·游戏引擎·godot
摇滚侠4 小时前
《SpringBoot 3:入门与应用实战》第 12 章 JDBC 与事务 使用 JdbcTemplate 阅读笔记 32
spring boot·笔记·后端
sunshine22 girl5 小时前
Java学习一 环境配置2 安装和基本使用Idea
java·学习·intellij-idea
鱼子星_6 小时前
【C++】继承和多态(上)
c++·笔记
Kobebryant-Manba6 小时前
学习Bert微调
人工智能·学习·bert
xian_wwq6 小时前
【学习笔记】深度认知系列-第14讲 端侧AI崛起——为什么AI正在从云端走向本地
人工智能·笔记·学习
我爱cope7 小时前
【计算机网络 | 传输层3:TCP 协议概述:面向连接、可靠传输到底意味着什么?】
网络·网络协议·学习·tcp/ip·计算机网络·传输层
策案案案8 小时前
YOLO: 将AI Agents嵌入到IntelliJ IDEA
java·大数据·人工智能·笔记·yolo·microsoft·intellij-idea
代码的小搬运工8 小时前
KVO学习
学习·ios·cocoa
辣知9 小时前
辣知·化智47 黄帝陵与民族精神归途
学习