<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.3.2.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<type>: 用于描述当前依赖的类型,默认为jar,还可以取值:war,pom
<scope>: 用于描述当前依赖的作用范围,默认为compile,还可以取值: test | runtime | provided
| system | import
compile: 默认值,表示当前依赖会参与项目的编译,测试和运行阶段,属于强依赖,打包时,会打进对应的包中.
test: 表示当前依赖仅仅只参与测试相关的内容,包括测试用例的编译和执行. 典型: junit,spring-boot-starter-test.
runtime: 当前依赖只参与运行周期中的使用.一般来说,这种都是接口与实现相分离的类库,典型:JDBC
provided: 表示当前依赖不参与打包过程,这个依赖由运行时环境来提供,典型: servlet-api.jar
system: 使用上跟provided相同,表示当前依赖不从maven仓库获取,而从本地文件系统中获取
import: 只能在dependencyManagement中使用,能解决maven单继承的问题,import的依赖关系实际上并不参与限制依赖的传递性