Maven依赖

Maven依赖管理

Maven依赖管理其实就是Maven软件对工程依赖的jar包进行统一管理。

1、依赖管理配置

在Maven工程的pom文件中通过group+artifactId+version来唯一标示仓库中的一个jar包,使用这种方式来管理项目所有依赖的服务。

<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.11</version>
</dependency>
2、依赖范围

目前Maven范围分为三个阶段:编译范围,测试范围,运行范围。依赖范围指的是,项目依赖的jar包在三个范围中的哪个或哪些范围内有效。

compile:编译,测试,运行范围内都有效。这也是默认的依赖范围
test:在编译和测试范围内有效
provide:只在运行时范围内有效

依赖范围配置

<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.11</version>
    //依赖范围配置
    <scope>test</scope>  
</dependency>
3、依赖传递

B项目依赖c.jar,如果此时A项目依赖B项目,则A项目也依赖c.jar。

依赖传递性

B依赖c.jar的依赖范围只能是compile的情况下,依赖才具有传递性。

依赖传递性原则:

统一jar包,被不同的项目依赖,会有不同的依赖原则。

  • 最短路径优先
    app1.0.jar依赖起效
    在这里插入图片描述
  • 声明顺序优先
    app1.0.jar依赖起效
    在这里插入图片描述
  • 覆盖原则
    一个pom文件中一个jar包依赖严禁声名多次,如果被多次声明则以最后一次声明的依赖为准。
依赖冲突解决

排除掉不需要的依赖

<dependency>
     <groupId>com.xxx</groupId>
     <artifactId>project-A</artifactId>
     <version>1.0</version>
     <!--将这里就是排除冲突的依赖-->
     <exclusions>
         <exclusion>
             <groupId>com.xxx</groupId>
             <artifactId>project-common</artifactId>
         </exclusion>
     </exclusions>
 </dependency>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值