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-属性
在这里插入图片描述