范围
compile
编译依赖范围,默认依赖范围,对编译、测试、运行三种classpath均有效
test
测试依赖范围,只对测试classpath有效,例子:JUnit
provided
已提供依赖范围,对于编译、测试classpath有效,例子:servlet-api
runtime
运行时依赖范围,对于测试、运行classpath有效
system
系统依赖范围,和provided依赖范围一致,需systemPath元素显示指定以来文件的路径,应慎用
依赖调解(Dependency Mediation)
第一原则:路径最近者优先
第二原则:最先声明者优先