news 2026/7/13 18:01:33

IDEA 高手必备:一招定位并解决 Maven 依赖冲突

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
IDEA 高手必备:一招定位并解决 Maven 依赖冲突


来自:https://blog.csdn.net/qq_46548855

推荐一个程序员编程资料站:

http://cxyroad.com

副业赚钱专栏:https://xbt100.top

2024年IDEA最新激活方法

后台回复:激活码

CSDN免登录复制代码插件下载:

CSDN复制插件

以下是正文。


目录

  • 一、查看依赖树

    • 方法 1:IDEA 自带 Maven 工具

    • 方法 2:使用命令行

    • 方法 3:IDEA 插件(推荐)

  • 二、找出冲突 jar 包

  • 三、解决冲突(exclusion)

  • 四、总结


模拟依赖冲突
<dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>6.0.9</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> <version>5.3.23</version> </dependency> </dependencies>

一、查看依赖树

方法 1:IDEA 自带 Maven 工具
  • 打开右侧 Maven 工具栏(快捷键Alt+Shift+M / View>Tool Windows>Maven)。

  • 找到你的项目,展开Dependencies节点。

    • 这里能看到所有依赖树结构。

    • 如果某个依赖有冲突,IDEA 通常会用 灰色/红色字体标注出被排除或版本冲突的 jar。

  • 鼠标悬停在依赖上,可以看到它的 来源(哪个依赖引入的)。

方法 2:使用命令行

在项目根目录执行:

mvn dependency:tree

这会打印依赖树,例如:

[INFO] org.example:dependency-test:jar:1.0-SNAPSHOT [INFO] +- org.springframework:spring-webmvc:jar:6.0.9:compile [INFO] | +- org.springframework:spring-beans:jar:6.0.9:compile [INFO] | +- org.springframework:spring-context:jar:6.0.9:compile [INFO] | +- org.springframework:spring-core:jar:6.0.9:compile [INFO] | | \- org.springframework:spring-jcl:jar:6.0.9:compile [INFO] | +- org.springframework:spring-expression:jar:6.0.9:compile [INFO] | \- org.springframework:spring-web:jar:6.0.9:compile [INFO] | \- io.micrometer:micrometer-observation:jar:1.10.7:compile [INFO] | \- io.micrometer:micrometer-commons:jar:1.10.7:compile [INFO] \- org.springframework:spring-aop:jar:5.3.23:compile

org.springframework:spring-beans:jar:6.0.9:compile用的6.0.0的版本

如果树太大,可以加过滤:

mvn dependency:tree -Dincludes=org.springframework
方法 3:IDEA 插件(推荐)

安装Maven Helper插件(在 IDEA 插件市场搜索)。

  • 打开 pom.xml,底部会出现Dependency Analyzer标签页。

  • 在这个面板里,可以:

    • 一键查看依赖树

    • 高亮显示冲突 jar 包

    • 直接右键选择 Exclude 依赖

二、找出冲突 jar 包

1.在依赖树里寻找 同一个groupId + artifactId但不同版本的依赖。

例如:

org.springframework:spring-beans:6.0.9 org.springframework:spring-beans:5.3.23 (omitted for conflict)

表示spring-beans有两个版本冲突。

2.Maven 默认会选 路径最短(离项目最近)的依赖,其他版本就会被排除(omitted)。

但有时候这个版本并不是你想要的,就需要手动干预。

三、解决冲突(exclusion)

在 pom.xml 中找到冲突依赖的 上游依赖,添加exclusion

例如,如果spring-boot-starter引入了错误的commons-logging,可以这样写:

<dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>6.0.9</version> <exclusions> <exclusion> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> </exclusion> </exclusions> </dependency>

或者如果只是版本不一致,可以在dependencyManagement里强制指定版本:

<dependencyManagement> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> <version>5.3.23</version> </dependency> </dependencies> </dependencyManagement>

四、总结

  • 快速看依赖树→ IDEA 自带依赖树 或mvn dependency:tree

  • 高效排查冲突→ 装Maven Helper插件,直观显示冲突。

  • 解决冲突→ 用exclusion排除不需要的包,或在dependencyManagement锁定版本。

<END>

推荐阅读:

副业赚钱推荐:让你的时间开始变现!

免费体验AI图片生成,就在 Image Generator Hub!

程序员在线工具站:cxytools.com 推荐一个自己写的工具站:https://cxytools.com,专为程序员设计,包括时间日期、 JSON处理、SQL格式化、随机字符串生成、UUID生成、文本Hash...等功能,提升开发效 率。 ⬇戳阅读原文直达! 朕已阅
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/10 9:06:10

Dify平台在低代码AI开发趋势中的战略定位

Dify平台在低代码AI开发趋势中的战略定位 在企业争相拥抱大模型的今天&#xff0c;一个现实问题日益凸显&#xff1a;如何让AI真正“用起来”&#xff1f;很多公司买了API、搭了算力、招了算法工程师&#xff0c;却发现从想法到上线仍需数周甚至数月。提示词反复调试无效、知识…

作者头像 李华
网站建设 2026/7/12 5:50:51

基于C#实现一维码和二维码打印程序

一、技术选型方案 1. 核心库选择 库名称支持类型特点适用场景ZXing.Net一维/二维条码开源跨平台&#xff0c;支持30编码格式&#xff0c;社区活跃通用型条码解决方案QRCoder二维码专用支持彩色二维码、Logo嵌入、多种输出格式&#xff0c;API简洁高定制化二维码需求TBarCode一…

作者头像 李华
网站建设 2026/7/12 12:59:13

解密Cartographer:多传感器时间同步机制的技术内幕深度剖析

解密Cartographer&#xff1a;多传感器时间同步机制的技术内幕深度剖析 【免费下载链接】cartographer Cartographer is a system that provides real-time simultaneous localization and mapping (SLAM) in 2D and 3D across multiple platforms and sensor configurations. …

作者头像 李华
网站建设 2026/7/13 6:40:31

Moovie.js:打造极致体验的纯JavaScript视频播放器

Moovie.js&#xff1a;打造极致体验的纯JavaScript视频播放器 【免费下载链接】moovie.js Movie focused HTML5 Player 项目地址: https://gitcode.com/gh_mirrors/mo/moovie.js 在当今视频内容爆炸的时代&#xff0c;一个优秀的视频播放器对于网站体验至关重要。Moovie…

作者头像 李华
网站建设 2026/7/11 11:00:13

40、Samba使用指南:额外资源、守护进程及客户端程序详解

Samba使用指南:额外资源、守护进程及客户端程序详解 在使用Samba的过程中,我们可能会遇到各种问题,也需要不断获取最新的信息和帮助。下面将详细介绍Samba的额外资源、守护进程以及客户端程序等方面的内容。 1. 额外资源 在使用Samba时,我们可以通过多种在线资源获取新闻…

作者头像 李华
网站建设 2026/7/11 18:45:24

械字号膏药代加工优选伙伴:天津市晨洁华美科技发展有限公司

大健康产业规范化发展进程中&#xff0c;械字号膏药凭借合规性强、消费者接受度高的特点&#xff0c;成为不少健康品牌、医药企业布局的重要方向。而械字号膏药代加工服务&#xff0c;也为这类企业降低研发与生产门槛、快速切入市场提供了便捷路径。在筛选合作厂家时&#xff0…

作者头像 李华