什么是依赖冲突

  1. 比如我们引入一个jar包,但是发现启动程序的时候总是报找不到该jar包中的方法

  2. 可能出现的原因就是依赖冲突,比如A->B->C->X(2.0),A->D->X(1.0),根据最短路径原则肯定是使用X(1.0)版本的jar包咯,但运行的方法是在X(2.0)版本的jar包中,所以会出现找不到方法的错误


使用IDEA查看依赖树

  1. 点击 View -> Tool Windows -> Maven

image.png

  1. 点击查看依赖树

image.png

  1. 这样就可以清楚的看到我们的项目依赖于哪些Jar包

image.png

解决依赖冲突

  1. 知道项目中依赖哪些jar包,就可以知道哪个jar包冲突了,然后手动排除低版本的jar包,留下高版本的jar包,因为高版本一般都具有向前兼容的特性

  2. 使用exclusions标签排除,比如A依赖了C,但是我不需要这个C了,就是用exclusions进行排除 ```xml

    A A 1.0 C C

```