Maven 中的 Dependency Scope

Dependency Scope 是用来声明依赖项(Dependency)的可见范围的。

在 maven 现在的版本中,对于依赖项有4中scope可以设置:

  1. compile: 这是默认的scope,表示依赖性可以在整个生命周期中可见。而且,该依赖项会传递到子的项目中。

  2. provided: 跟compile相似,但是表明了该依赖项由JDK或者容器提供,这个scope 只能作用在编译和测试时,同时没有传递性,并且不会将包打入本项目中。

  3. runtime: 表示该依赖项不作用在编译时,但会作用在运行和测试时

  4. test: 表示dependency作用在测试时,不作用在运行时,也不会将包打入本项目中。

  5. system: 跟 provided 相似,但是在系统中要以外部JAR包的形式提供,maven不会在repository查找它。

  6. import: 只使用在中,表示从其它的pom中导入dependency的配置

本文标题:Maven 中的 Dependency Scope

文章作者:Morning Star

发布时间:2019年09月11日 - 19:09

最后更新:2021年04月16日 - 15:04

原始链接:https://www.mls-tech.info/java/java-maven-dependency-scope/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。