欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

maven 依赖中scope标签的配置范围详解

程序员文章站 2022-05-31 09:35:57
在创建Maven项目时,需要在pom.xml 文件中添加相应的依赖,其中有一个scope标签,该标签是设置该依赖范围 (maven项目包含三种classpath{编译classpath,测试classpath、运行classpath})的,其可选配置:compile、test、provided、ru ......

在创建maven项目时,需要在pom.xml 文件中添加相应的依赖,其中有一个scope标签,该标签是设置该依赖范围

(maven项目包含三种classpath{编译classpath,测试classpath、运行classpath})的,其可选配置:compile、test、provided、runtime、system和import。

maven有以下几种依赖范围:

  • compile:编译依赖范围,如果在依赖中没有配置该标签,则默认为该依赖范围。此依赖范围对 于编译、测试、运行三种classpath都有效。
  • test:测试依赖范围,此依赖范围只针对于测试classpath有效。在编译和运行时,都不会引入。
  • provided:已提供依赖范围,使用该依赖范围对于编译和测试的classpath有效,在运行时,不会引入。
  • runtime:运行时依赖范围,使用该依赖范围对测试和运行的classpath有效,在编译时,不会引入。
  • system:系统依赖范围,该依赖范围与provided依赖的范围完全一致,但是该依赖必须通过配置systempath元素来显示指定依赖文件的路径,此类依赖不是由maven仓库解析的,而且往往与本机系统绑定,可能造成构件的不可移植。
  • import:导入依赖范围,该依赖范围不会对三种classpath产生影响,该依赖范围只能与dependencymanagement元素配合使用,其功能为将目标pom文件中dependencymanagement的配置导入合并到当前pom的dependencymanagement中。

 

以上内容的学习参考以下文献

对此,非常感谢。