maven依赖传递关系
来源:互联网 发布:添加网络歌曲到空间 编辑:程序博客网 时间:2024/05/21 17:44
一、maven 依赖传递规则
举个例子,比如A依赖B,B依赖C,那么A也是依赖C的。A是对B的直接依赖,A对C是传递依赖
①、最短路劲原则
如,路劲一:A依赖B,B依赖C,C依赖D(1.0.0);
路劲二:A依赖E,E依赖D(2.0.0),
此时A间接依赖D版本是2.0.0!
②、最先定义原则
如,路劲一:A依赖B,B依赖C(1.0.0);
路劲二:A依赖E,E依赖C(2.0.0),
此时A间接依赖C版本是1.0.0!
题外话,如果想精确的控制依赖包版本,可以使用依赖的排除功能——>exclusions来排除
二、依赖传递的作用域
在dependency配置中如果没有写scope默认就是compile范围,依赖的传递主要是针对compile作用域
依赖的范围:
test范围指的是测试范围有效,在编译和打包时都不会使用这个依赖
compile范围指的是编译范围有效,在编译和打包时都会将依赖存储进去
provided范围指的是在编译和测试的过程有效,最后生成war包时不会加入,诸如:servlet-api,因为servlet-api,tomcat等web服务器已经存在了,如果再打包会冲突
runtime在运行的时候依赖,在编译的时候不依赖
0 0
- maven依赖传递关系
- maven依赖传递关系
- maven的传递依赖与scope关系
- Maven依赖传递
- maven 依赖传递
- maven传递性依赖
- maven 传递依赖
- Maven -- 依赖传递
- maven传递依赖规则
- Maven中的依赖传递
- 【Maven】传递性依赖
- maven依赖传递
- maven传递依赖范围
- Maven依赖传递
- Maven依赖排除 禁止依赖传递 取消依赖的方法 去除jar包中的不想要的依赖关系
- Maven依赖排除 禁止依赖传递 取消依赖的方法 去除jar包中的不想要的依赖关系
- Maven 依赖范围和classpath的关系及其依赖传递性
- Maven之依赖关系
- 冒泡排序思想
- class私有变量、const类型
- maven快速入门
- eclipse创建maven模块工程
- 命令行创建maven模块工程
- maven依赖传递关系
- ZOJ
- MAC升级node.js
- mybatis-generator-core自动生成do、mapping、dao 代码
- 模板模式讲解一
- 使用Python实现Telnet远程登录
- fastjson使用示例
- 数组和集合List的相互转化
- Virtual