【后端】Maven中包的依赖原则?如何解决冲突?(约213字)

# Maven中包的依赖原则?如何解决冲突?

  • 依赖原则
  1. 依赖路径最短优先原则
A -> B -> C -> X(1.0)
A -> D -> X(2.0)

由于 X(2.0) 路径最短,所以使用 X(2.0)。

  1. 声明顺序优先原则
A -> B -> X(1.0)
A -> C -> X(2.0)

在 POM 中最先声明的优先,上面的两个依赖如果先声明 B,那么最后使用 X(1.0)。

  1. 覆写优先原则

子 POM 内声明的依赖优先于父 POM 中声明的依赖。

  • 如何解决冲突
  1. 找到 Maven 加载的 Jar 包版本,使用 mvn dependency:tree 查看依赖树,根据依赖原则来调整依赖在 POM 文件的声明顺序。

  2. 发现了冲突的包之后,剩下的就是选择一个合适版本的包留下,如果是传递依赖的包正确,那么把显示依赖的包exclude掉。如果是某一个传递依赖的包有问题,那么我们需要手动把这个传递依赖execlude掉

THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容