Maven依赖调节(转)

实际开发中可能存在这种情况,A->B->C->X(1.0),A->D->X(2.0),此时X出现了2个版本1.0和2.0,此时A项目会选择X的哪个版本?

解决这种问题,maven有2个原则:

路径最近原则

上面A->B->C->X(1.0),A->D->X(2.0),X2.0版本距离A更近一些,所以A项目会选择2.0;

但如果出现了路径距离一样,如:A->B->X(1.0),A->D->X(2.0),此时maven又如何选择?

最先声明原则

如果出现了路径一样,此时会看A的pom.xml中所依赖的B、D在dependencies中的位置,谁的声明在最前面,就以谁的为准,比如A->B在前面,那么最后X会选择1.0版本。

所以两个原则:路径最近原则、最先声明原则;

转自“https://www.cnblogs.com/healthinfo/p/17079932.html”

posted on 2023-05-08 07:49  trako  阅读(15)  评论(0编辑  收藏  举报

导航