当前位置: 首页 > news >正文

maven 最短路径依赖优先

问题描述:

项目在升级大版本后出现了,两个不同模块所引用的同一个依赖包版本不同
module A 引用了 module B,module B 引用了 A_1.0.jar->B_1.0.jar->C_1.0.jar(C 为B 里面的包)
在执行 mvn dependency:tree 后发现:
moduleA 引用的包为:module B.jar->A_1.0.jar->B_1.0.jar->C_2.0.jar
moduleB 引用的包为:A_1.0.jar->B_1.0.jar->C_1.0.jar

排查后发现:A_1.0.jar 在 dependencyManagement 中 指定了 C 的版本为 C_1.0
而 moduleA 在引入moduleB.jar 同时也直接引入了 B_1.0.jar,所以在moduleA中出现下面的层级:
B_1.0.jar->C.2.0.jar
module B.jar->A_1.0.jar->B_1.0.jar->C_1.0.jar
根据maven 的路径最短 自动选择了 C_2.0.jar 这个版本 导致不一致;

解决办法:

在项目的最外层的父项目的 pom 的 dependencyManagement 添加了 C_1.0.jar, 让项目中 C的版本统一了。

相关文章:

  • c#基础08(数组)
  • 第十章:构建之巅 · 打包与部署的终极试炼
  • 实验设计与分析(第6版,Montgomery)第3章单因子实验:方差分析3.11思考题3.1 R语言解题
  • Docker常用操作
  • 下一代 SaaS 平台的 AI 架构重构路径——多租户 AI 服务调度 · 多角色智能辅助 · 嵌入式 AIGC 能力的融合设计
  • 欧几里得 ---> 裴蜀定理 ---> 拓展欧几里得
  • OpenCV CUDA模块图像处理------颜色空间处理之拜耳模式去马赛克函数demosaicing()
  • HarmonyOS NEXT~鸿蒙系统运维:全面解析与最佳实践
  • el-tree拖拽事件,限制同级拖拽,获取拖拽后节点的前后节点,同级拖拽合并父节点name且子节点加入目标节点里
  • 【华为云物联网】如何实现在 MQTT.fx 上模拟数据间隔上传一次,并按设定系数变动数据
  • 打造AI智能旅行规划器:基于LLM和Crew AI的Agent实践
  • python和java差异:关键数据类型与容器
  • PaddleNLP 的文本分类项目
  • Cmake4编译PaddleOCR3.0成功步骤
  • 分块查找详解
  • yolo最终笔记
  • 【node】Express创建服务器
  • 使用新一代达梦管理工具SQLark,高效处理 JSON/XML 数据!
  • linux快速入门-VMware安装linux,配置静态ip,使用服务器连接工具连接,快照和克隆以及修改相关配置信息
  • 通用前端框架项目静态部署到Hugging Face Space的实践指南
  • 买源码做网站简单嘛/互联网营销师考证多少钱
  • 昌平网站建设浩森宇特/长沙靠谱的关键词优化
  • 盘龙城做网站/谷歌搜索入口365
  • 花茶网站设计/网络营销岗位技能
  • 网站广告劫持怎么做/太原seo关键词排名优化
  • wordpress tob 0.9主题/东莞seo排名外包