登录
/
注册
首页
论坛
其它
首页
科技
业界
安全
程序
广播
Follow
关于
每日签到
每天签到奖励2圆-6圆
发帖说明
VIP申请
登录
/
注册
账号
自动登录
找回密码
密码
登录
立即注册
搜索
搜索
关闭
CSDN热搜
程序园
精品问答
技术交流
资源下载
本版
帖子
用户
软件
问答
教程
代码
写记录
写博客
VIP申请
VIP网盘
网盘
联系我们
每日签到
道具
勋章
任务
设置
我的收藏
退出
腾讯QQ
微信登录
返回列表
首页
›
业界区
›
业界
›
maven为什么发生依赖冲突?怎么解决依赖冲突? ...
maven为什么发生依赖冲突?怎么解决依赖冲突?
[ 复制链接 ]
纪晴丽
2025-6-3 14:56:26
maven为什么发生依赖冲突?怎么解决依赖冲突?
我们在开发的时候,偶尔会遇到依赖冲突的时候,一般都是NoClassDefFoundError、ClassNotFoundException、NoSuchMethodError。打开搜索框又发现有这个类,明明就是引入进来了,就是找不到,让人头疼
1. 依赖冲突场景
在maven中依赖管理,依赖是可以传播的
假设:我有个A项目。第一步A项目引入B依赖,B依赖又会引入C依赖(版本1.1),那么A项目就同时拥有了B、C依赖(版本1.1),第二步我再引入D依赖,D依赖引入C依赖(版本1.2)
图解:
第一步:A -> B -> C(1.1版本)
第二步:A -> D -> C (1.2版本)
复制代码
问题来了,maven会取哪个版本的C进行引入?
2. 当冲突时maven怎么样选择
针对依赖冲突场景提出的问题,答案是:1.1版本
为什么是1.1 版本?因为maven有几条原则,按照原则优先级选择
2.1 就近原则
哪个依赖离的近取哪个
假设:我有个A项目。第一步A项目引入B依赖,B依赖又会引入C依赖(版本1.1)。第二步,在本项目pom中引入C依赖(版本1.2)
图解:
第一步:A -> B -> C(1.1版本)
第二步:A -> C (1.2版本)
复制代码
那必须是1.2版本啊
2.2 第一声明者原则
通俗一点就是,就近原则如果相同判断不出来,谁先来谁选择谁
假设:我有个A项目。第一步A项目引入B依赖,B依赖又会引入C依赖(版本1.1),那么A项目就同时拥有了B、C依赖(版本1.1),第二步我再引入D依赖,D依赖引入C依赖(版本1.2)
图解:
第一步:A -> B -> C(1.1版本)
第二步:A -> D -> C (1.2版本)
复制代码
那必须是1.1版本啊
3. 怎么样解决冲突?
idea下载Maven Helper插件
点击pom文件左下角
点击Conflicts选择冲突选项
右键,点击Exclude排除
返回pom文件发现自动加了exclusions标签进行排除
<exclusions>
<exclusion>
poi-ooxml-schemas</artifactId>
<groupId>org.apache.poi</groupId>
</exclusion>
</exclusions>
复制代码
一般来说取高版本的,因为高版本的一般都会兼容低版本
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
依赖
冲突
maven
为什么
发生
相关帖子
为什么说jobleap.cn是最适合大学生找工作的App
GraphRAG为什么能提升检索准确率
经验贴:利用Maven打包时的注意事项
Why框架元推理,为什么是认知奇点?AI新范式
WPF依赖属性学习
【EF Core】实体类的依赖注入
【URP】法线贴图为什么主要是蓝色的?
目前的股市,还没有发生结构性的变化
领导骂我,我为什么不在意
为什么要用async、await ?
vip免费申请,1年只需15美金$
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
相关推荐
安全
为什么说jobleap.cn是最适合大学生找工作的App
0
678
闾丘婉奕
2025-08-31
安全
GraphRAG为什么能提升检索准确率
0
739
缑莺韵
2025-08-31
安全
经验贴:利用Maven打包时的注意事项
0
528
浦乐
2025-09-01
业界
Why框架元推理,为什么是认知奇点?AI新范式
0
38
慎气
2025-09-03
业界
WPF依赖属性学习
0
115
诉称
2025-09-04
业界
【EF Core】实体类的依赖注入
0
1000
笃迩讦
2025-09-06
业界
【URP】法线贴图为什么主要是蓝色的?
0
1008
僻嘶
2025-09-07
业界
目前的股市,还没有发生结构性的变化
0
507
裒噎
2025-09-09
业界
领导骂我,我为什么不在意
0
421
老僻贞
2025-09-10
业界
为什么要用async、await ?
0
590
存叭
2025-09-12
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
回复
本版积分规则
回帖并转播
回帖后跳转到最后一页
签约作者
程序园优秀签约作者
发帖
纪晴丽
2025-6-3 14:56:26
关注
0
粉丝关注
22
主题发布
板块介绍填写区域,请于后台编辑
财富榜{圆}
敖可
9984
杭环
9988
凶契帽
9988
4
氛疵
9988
5
黎瑞芝
9988
6
猷咎
9986
7
里豳朝
9986
8
肿圬后
9986
9
蝓俟佐
9984
10
虽裘侪
9984
查看更多