在实际开发过程中,会经常碰到maven依赖冲突的问题,导致编译的时候报一些异常,这里提供一个简单的的方法,在 IDEA 上查找依赖冲突的地方,以及排除依赖包。

在 idea 界面的右上角找到下图 1 的地方,点击可以看到该项目下有个Dependencies的目录,他详细记录了我们引入了的jar包,当然这里是看不到依赖冲突的问题的

然后我们点击上图 3 的位置,打开下面这样一个依赖详细的树状结构

注意:不同版本的IDEA那个按钮的图标不一样,但是位置是不变的,你根据位置定位到就好

可以看到很多密密麻麻的蓝色线,蓝色线表示依赖是没有问题的,而红色虚线是表示同一个jar都在哪里被多次引用了,红色实线则表示依赖冲突了,(这里说下同个jar包多次引用,并不会导致编译出错,而依赖冲突了才会导致编译过不了)

红色实线是我们必须要解决的依赖冲突,这时候我们可以直接鼠标点击红色实线指向的jar包,右键选择  Exclude ,然后 idea 右下角就会弹出 提示你 Import Changes

           

点击 Import Changes 后你再去查看 pom.xml 文件,相关的 dependency 依赖已经多了 excluion 标签了

(原本在去除依赖冲突前,下面的红色框里的内容是没有的)

然后其实我们如果知道了哪些依赖包里面有冲突的jar包我们也可以直接到pom.xml文件里面,自己加上 exclusion 标签单独去除对应的依赖jar包!

下面还有一种查看jar包依赖树的方法:

打开 Terminal 输入mvn的命令查看jar依赖树

下面两个命令,加上 -Dverbose>xxx.txt 参数的其实就是将输出的内容生成一个指定的文件放在根目录

不加后面指令的就是直接输出到控制台

mvn dependency:tree
mvn dependency:tree -Dverbose>dependency.txt

注意:mvn dependency:tree 命令必须要在pom.xml同级目录下执行

IDEA查看maven依赖树,找出冲突jar包,以及 exclusion 冲突的包相关推荐

  1. idea中查看maven依赖树

    在idea 界面右侧可找到Maven选项卡, 操作步骤下图: 主页面中显示依赖树如下图:

  2. IDEA查看maven依赖关系的方法

    在terminal窗口下,进到相应的工程目录,执行命令:mvn dependency:tree 就能看到jar包的依赖关系: [INFO] com.edaily:edaily-api:jar:1.0- ...

  3. linux+平均磁盘请求数量_Linux 查看磁盘IO并找出占用IO读写很高的进程

    背景-线上告警 线上一台服务器告警,磁盘利用率 disk.util > 90,并持续告警. 登录该服务器后通过 iostat -x 1 10 查看了相关磁盘使用信息.相关截图如下: # 如果没有 ...

  4. centos 7 查看磁盘io ,找出占用io读写很高的进程

    1,先用iostat查看磁盘io 是否读写负载很高 用iostat -x 1 10 如果 iostat 没有,要 yum install sysstat安装这个包,第一眼看下图红色圈圈的那个如果%ut ...

  5. Linux 查看磁盘IO并找出占用IO读写很高的进程

    根据磁盘IO告警,找到占用磁盘IO (util)读写很高的进程. 背景-线上告警 线上一台服务器告警,磁盘利用率 disk.util > 90,并持续告警. 登录该服务器后通过 iostat - ...

  6. linux查看系统安装时间命令,找出Linux操作系统(OS)安装日期和时间

    你可能想知道你的计算机上何时安装了Linux操作系统,即OS的安装日期和时间,使用tune2fs.dumpe2fs.ls.basesystem.setup.setuptool命令能出来结果.请注意,如 ...

  7. Maven依赖方式引用UEditor的jar包

    使用UEditor时候,如果不引入相关jar包,controller.jsp就会报找不到类的错误,一些功能也无法实现.但是maven中央仓库没有这两个相关的jar包,用直接导入的方式又显得莫名其妙,那 ...

  8. Ecplise中的Maven项目提示找不到jar包

    多人协作开发时,使用版本控制进行代码拉取, 有时拉取下来的代码会提示找不到某某jar包. 我们需要从别人正常跑的电脑里拷贝过来这个jar包. 然后依照提示的路径,在本地找到路径复制进去.

  9. Maven命令行查看依赖树

    Maven 是当前最普及的包管理工具,在我们的项目变大后会时不时的遇到需要解决依赖冲突的场景.这里介绍一种通过Maven中的插件,基于命令行实现依赖树查看的方法. 基本命令如下: mvn depend ...

最新文章

  1. 怎样使用AutoLayOut为UIScrollView添加约束
  2. hub设备_HUB选择困难症?从这里解决
  3. MV* 框架 与 DOM操作为主 JS库 的案例对比
  4. oracle job有定时执行的功能,可以在指定的时间点或每天的某个时间点自行执行任务。...
  5. 2020 数据技术嘉年华:吹响国产数据库的集结号 诚邀参会览技术前沿
  6. Java异常处理学习笔记(抛出、捕获、finally、异常传播、NPE、断言、日志)
  7. python编程中的if __name__ == 'main' 的作用和原理
  8. CS224n自然语言处理(二)——语言模型、机器翻译和CNN
  9. 使用单元测试驱动开发的方式编写flask应用
  10. Android handler.obtainMessage()传字符串用法
  11. 10个免费域名转发地址 无广告 无需要注册
  12. php检查某个网站,用php开发一个检测某网站是否在正常运行的小模块
  13. ad9修改焊盘阻焊层大小
  14. CC2530实现流水灯
  15. 银行卡四要素检测 API接口数据
  16. 马克飞象markdown用法
  17. 锐捷服务器系统安全,更安全 锐捷网络发布RG-ESS易安全系统
  18. npm 全局安装 yarn、tsc、rimraf 不是内部或外部命令
  19. 机器人路径规划_人工蜂群算法
  20. 使用pandas对excel表格筛选

热门文章

  1. 基于web的家电维修系统/上门维修管理系统
  2. mysql executed_mysql gtid_executed详解
  3. AtCoder Grand Contest 017 迟到记
  4. 一文读懂DNA甲基化及BS-seq
  5. MAT分析OOM dump文件方法
  6. 后端代码一键打包上传服务器并重启服务
  7. excel文档关闭时不小心点了不保存???老铁别扎心以下方法可以恢复!!!
  8. 什么是scss,怎么在一个VUE项目中使用scss
  9. 精品基于NET实现的家电维修保养信息系统
  10. cuda临界区问题的总结