解决该问题有四种原则:路径近者优先原则,第一声明者优先原则,这两种原则又统称为调节原则,还有排除原则和版本锁定原则。
以下原则struts2-spring-plugin中的spring-bean-3.0.5包和spring-context中spring-bean4.2.4版本做例子进行说明
一、路径近者优先原则
上述的那两个jar包如果说成是别人创建的, 如果自己添加一个新的sping-bean-4.2.4包,那自己添加的这个jar包则是离我距离最近的那个jar包,所以当项目使用时应会优先使用我自己添加的spring-bean,这就是路径近者优先原则。
![](https://i-blog.csdnimg.cn/blog_migrate/22d5d93a0ef0b5dc07e6d4db1d352323.png)
二、第一声明者优先原则
该原则有注册filter时有些类似,即谁先注册的就先使用谁。
三、排除原则
排除原则是在某个不用的坐标下添加exclusion标签,如下图所示
四、版本锁定原则
以上就是关于解决依赖版本冲突问题的解决方案!