自动化构建工具——maven学习(四)

15.依赖[高级]
  ①依赖的传递性
这里写图片描述
   [1]好处:可以传递的依赖不必在每个模块工程中都重复声明,在“最下面”的工程中依赖一次即可。
   [2]注意:非compile范围的依赖不能传递。所以在各个工程模块中,如果有需要就得重复声明依赖。
  ②依赖的排除
   [1]需要设置依赖排除的场合
这里写图片描述
   [2]依赖排除的设置方式
这里写图片描述
  ③依赖的原则
   [1]作用:解决模块工程之间的jar包冲突问题
   [2]情景设定1:验证路径最短者优先原则
这里写图片描述
   [3]情景设定2:验证路径相同时先声明者优先
这里写图片描述
    先声明指的是dependency标签的声明顺序
  ④统一管理依赖的版本
   [1]情景举例
这里写图片描述
    这里对Spring各个jar包的依赖版本都是4.0.0
    如果需要统一升级为4.1.1,怎么办?手动逐一修改不可靠。
   [2]建议配置方式
    i.使用properties标签内使用自定义标签同意声明版本号
这里写图片描述
    ii.在需要统一版本的位置,使用${自定义标签名}引用声明的版本号
这里写图片描述
   [3]其实properties标签配合自定义标签声明数据的配置并不是只能用于声明依赖的版本号。凡是需要统一声明后再引用的场合都可以使用。
这里写图片描述
16.继承
  ①现状
   Hello依赖的junit:4.0
   HelloFriend依赖的junit:4.0
   MakeFriends依赖的junit:4.9
   由于test范围的依赖不能传递,所以必然会分散在各个模块工程中,很容易造成版本不一致。
  ②需求:统一管理各个模块工程中对junit依赖的版本
  ③解决思路:将junit依赖统一提取到“父”工程中,在子工程中声明junit依赖时不指定版本,以父工程中统一设定的为准。
  ④操作步骤
   [1]创建一个Maven工程作为父工程。注意:打包的方式pom
这里写图片描述
   [2]在子工程中声明对父工程的引用
这里写图片描述
   [3]将子工程的坐标中与父工程坐标中重复的内容删除
这里写图片描述
   [4]在父工程中统一管理junit的依赖
这里写图片描述
   [5]在子工程中删除junit依赖的版本号部分
这里写图片描述
  ⑤注意:配置继承后,执行安装命令时要先安装父工程
17.聚合
  ①作用:一键安装各个模块工程。
  ②配置方式:在一个“总的聚合工程”中配置各个参与聚合的模块
这里写图片描述
  ③使用方式:在聚合工程的pom.xml上点右键–>run as–>mvn install
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值