maven依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
scope范围
名称 | 有效范围 |
---|---|
Compile | 编译,测试,运行。默认的依赖范围 |
Test | 测试,如Junit |
Runtime | 运行,如JDBC |
Provided | 编译,测试,如ServletAPI |
System | 编译,测试,依赖于系统变量 |
依赖传递规则
级别一样,就先用第一个,级别不一样,就用级别最少的
如果在同一pom.xml文件中有2个相同的依赖;后面声明的会覆盖前面的依赖
当且仅当范围是compile可传递
如果是在不同pom.xml中有2个相同的依赖;则先声明的依赖,会覆盖后面声明的依赖
<optional>true</optional>
去除依赖传递性,不会传递该包的依赖
去除引用包的依赖
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
</exclusions>
maven-helper 排除冲突神器