00:00
OK,那么首先呢,我们大体来回顾一下昨天我们讲的多模块管理呢的第一种方式,也就是说第一种方式首先我们得去创建一个空项目,那么在空项目里边我们就创建一个一个一个一个的model,那么在这呢,只要是maven他提供多模块管理里边有一个负工程,负工程就要求他必须遵循以下两点。那么第一。就是干嘛,他这个packing标签值设置为POM对吧,设置为POM,那也就是说,那也就是说你创建的这个像不管是没Java Java工程也好,没外围工程也好,无所谓,因为第二点他要求里面,他要求把src目录给删除掉,所以说在这跟这跟这个src根本就没关系,诶只要你遵循这两点,它就是一个负工程,那接下来创建完负工程之后呢,我们干嘛,我们紧接着去创建它的子工程,那创建子工程呢,首先前提是你必须得是什么,必须使他的。
01:05
必须是一个ma工程,那也就是创建ma工程,Java和web都行,无所谓,你下一步第一个选项我们不添加第一种模式啊,第一个选项不添加I as model to,我不添加到任何模块,所以说我在这选择呢,第二个选择你的负工程,对吧,选择你的负工程,比如说是parent,然后呢,OK,那这个时候呢,我们子模块就会无条件子模块的ID。和version就会无条件的继承谁啊,继承我们负工程的ID和version,明白了吧?那么这个时候呢,只有项目名称能可可以修改,那他在这呢,只要你不重复就行,6006-ma文杠加va ma文刚加了,然后下一步这路径要注意一下,我们现在放的所有项目都在空项目的根目录下面,而且你要注意一下他这个名字,有的时候他那是没有改,没有改需要我们手动的去修改一下,然后finish finish OK,那这个时候呢,我们子模块就会无条件继承负模块负工程POM文件里边的这依赖,但是这个时候大家可以看一下我的这个子模块,我的这个子模块里边是没有继承一个呀,那是因为我们的负工程,那是因为我们的负工程他把所有的依赖进行了管理,使用的是dependency management标签,那这个在工作中以后,你们会看到啊,那么一旦管理起来之后,那就意味着我们的子模块就就必须干嘛就不能。
02:40
无条件去继承了,所以说这个时候呢。不能无条件去继承,那怎么办?这时候就需要我们,你使用哪个依赖你就干嘛,你就去声明,那这叫做声明式依赖,比如说我在这儿呢,我在006里边,我要使用这个MYSQL驱动,你只需要告诉副工程,诶对吧?呃,我的父亲对不对,我需要买SQL驱动,然后呢,这个时候你就不用管了,买SQ驱动就来了,对吧?那么也就是说父亲给你什么,你就用什么,当然如果说你自己指定了,如果你自己指定了,当然以你自己的为准,5.1.9对吧,5.1.9,这一时候你会看到我们现在用的就是自己的这个5.1.9,那也就是说,那实际上我们子摩尔实际上继承就是负工程的这个依赖的什么呀,依赖的版本号,那也就说白了,什么意思啊,那也就说白了,负工程实际上管理的就是这些依赖的版本号,所以说负工程将把这些管理依赖的版本号。
03:45
放哪放这个pro标签里边,在这里边我们可以自定义这些标签名,通常这个自定义的标签的名称由项目的名称再加上一个version字段,要么用横杠连接,要不用点连接都这是最最常见的两种,没有其他方式了啊,没有其他方式了。
04:04
所以说在这呢,我们可以统一,这就好比是一个免,这就好比是一个老大一样,他要统一管理所有的他的下属,按照他所制定的规则去走,那比如说按照他所制定这些依赖的版本号,比如说我现在依赖干嘛要这个给unit要改成4.10,那这个时候我只需要在负工程改一下,从把4.12改成4.10,那这个时候呢,我们所有的这些所用到的这个一赖的工程就全部都改了,对不对,就全部都改了,那这就是他使用那种好处啊,统一管理,统一管理明白吧,这样的话,我们就一个项目里边就。不容易出现一些其他的一些比如说版本号不一致啊,导致的其他一系列不必要的问题啊,那这种模式也是在分布式开发式,开发式里边最常见的,这也是在现在现在的这个互联网公司以及这些公司里边最常用的一种模式,因为现在的这些业务怎么越来越来越复杂,明白吧,模块越来越多,而且每个需求都不一样。
05:10
美学都不一样,所以说基于基于这种基于这种要求呢,诶就有了这种模式啊,这是我们昨天所做的第一种方式。
我来说两句