在创建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中。
以上内容的学习参考以下文献
https://blog.csdn.net/seasonsbin/article/details/79093647
https://blog.csdn.net/litte_frog/article/details/79390392
https://blog.csdn.net/douyunqian668/article/details/80898165
对此,非常感谢。