版本冲突的解决方案
[1]调节原则
[1]路径最短者优先原则
[2]路径相同时,先声明者优先原则
[2]排除原则:用于排除某项依赖的依赖jar包
1 <dependency>
2 <groupId>javax.servlet</groupId>
3 <artifactId>servlet-api</artifactId>
4 <version>2.5</version>
5 <exclusions>
6 <exclusion>
7 <groupId></groupId>
8 <artifactId></artifactId>
9 <!--这里不需要指定版本号,由于是排除特定依赖的某个依赖jar包,所以版本固定,不需指定 -->
10 </exclusion>
11 </exclusions>
12 <scope>provided</scope>
13 </dependency>
[3]版本锁定原则:一般用在继承项目的父项目中
1 <dependencyManagement>
2 <dependencies>
3 <dependency>
4 <!--jar包坐标 -->
5 <groupId></groupId>
6 <artifactId></artifactId>
7 <version></version>
8 </dependency>
9 </dependencies>
10 </dependencyManagement>
1、版本锁定之后,后面再使用到这个的 依赖的时候,就不要写版本号了!
2、而且如果有多个相同的需要锁定的jar包的版本号一致的话,我们可以单独提取到properties标签中,
3、在properties标签中,子标签自己定义,标签的值就是版本号,下面只需要在依赖的地方用${标签名}引用就可以了!