maven中依赖scop标签作用
compile
默认compile,是一个比较强的依赖。打包的时候通常需要包含进去。默认的scope,在部署的时候将会打包到lib目录下,项目在编译,测试,运行阶段都需要
test
表示依赖项目仅仅参与测试相关的工作
runntime
仅仅适用于运行环境,在编译和测试环境下都不会被使用
provided
和compile很接近,但是provide仅仅需要在编译和测试阶段,同样provide将不会被打包到lib目录下
system
从参与度来说,也provided相同,不过被依赖项不会从maven仓库抓,而是从本地文件系统拿,一定需要配合systemPath属性使用
optional
<optional>true</optional>只能本项目使用,不会被传递