帮助检查包冲突的IDEA插件
Maven Helper
剔除某个依赖冲突的包
概括:项目中引用Spring的jar包Maven把依赖的log4j-1.0.jar引入进来了, 项目中引入Hibernate的jar包和log4j-1.5.jar引进来了,整个项目中引入了多个版本log4j-x.jar的jar包,这种依赖关系混乱不?所以要剔除这种依赖关系.
解决:1.把spring的jar中依赖的log4j-1.0.jar剔除 2.把hibernate依赖的log4j-1.5.jar剔除 3.引入log4j-2.0.jar版本让他俩依赖我们自己引入的版本的jar.
例子:如剔除自带的logback
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<artifactId>logback-classic</artifactId>
<groupId>ch.qos.logback</groupId>
</exclusion>
</exclusions>
</dependency>
主要是添加 exclusions 标签体指定要剔除的包
存在公共依赖包管理子model时,如何在自己的项目中指定某个依赖的版本
比如你的工程中有一个专门用来管理所有maven依赖的model工程:
我的是这个样子的
里面有对所有外部依赖的管理,而它自身也是一个依赖。我们不能改这个依赖里的内容,却有想指定自己其他依赖的版本时,做如下处理:
- 添加指定的version版本
- 添加type
- 添加scope