Maven 依赖范围 scope 属性详解

依赖范围就是用来控制依赖与三种 classpath(编译 classpath、测试 classpath、运行 classpath)的关系。

依赖范围(scope) 对于编译 classpath 有效 对于测试 classpath 有效 对于运行 classpath 有效(打到包里) 例子
compile spring-core
test - - JUnit
runtime - JDBC 驱动实现
provided - servlet-api(容器提供)
system - 本地的,Maven 仓库之外的类库文件
import(Maven 2.0.9 及以上) 不会对三种 classpath 产生实际的影响

import 依赖说明:

该范围的依赖只在 dependencyManagement 元素下才有效果,使用该范围的依赖通常指向一个 POM,作用是将目标 POM 中的 dependencyManagement 配置导入并合并到当前 POM 的 dependencyManagement 元素中。例如想要在另外一个模块中使用与代码清单8-14完全一样的 dependencyManagement 配置,除了复制配置或者继承这两种方式之外,还可以使用 import 范围依赖将这一配置导入

参考

参考资料 网址
书籍《Maven 实战》第五章:坐标和依赖,第5.5节:依赖范围
maven官方介绍 https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Dependency_Scope

posted on 2019-11-25 11:12  cag2050  阅读(236)  评论(0编辑  收藏  举报

导航