idea 中解决maven 包冲突的问题(maven helper)

日常开发中经常会遇到xxx.class 找不到的异常,但是这个类确实存在我们的项目中,就会感觉很离奇,其实这就是包冲突的问题

冲突问题

比如项目中引用了两个 fastjson.jar的版本,分别为

fastjson:1.2.28 
fastjson:1.2.3

我们用到了1.2.28中的某个类, 比如 A类,在版本更新中 1.2.3版本去掉了这个类,然而我们项目中maven 却把1.2.3的 jar 打包进去了,那我们就会报异常,不存在这个 class,但是我们调错误的时候却发现这个类存在,那我们怎么找到问题根源呢,到底是哪个包的需要Exclude 呢,我之前也不会,今天有幸找到个方法,分享给大家。

idea 中maven 问题

idea 中查看 maven 依赖只会给你一个复杂到极点图,基本没有啥价值,所以要安装个插件 maven helper,这个插件用了都说好啊

解决问题

  • 首先安装插件 maven helper(因为我已经安装了,所以没 install 的按钮了) 
    这里写图片描述

  • 安装完成后,在 pom 文件下方会出现这个东西 
    这里写图片描述

  • 点进去你会发现仿佛回到了 eclipse 
    这里写图片描述

  • 接下来到重点了,选中冲突选项 conflicts,这一列都是存在冲突的包 
    这里写图片描述

  • 以fastjson 为例 
    这里写图片描述
    当然我们调错误的时候也可以直接搜索有问题的包,如下 
    这里写图片描述

  • 选中右键就可以 Exclude 啦,想用1.2.28就把其他版本的Exclude掉,想用1.2.3就把其他版本的Exclude掉,是不是很方便。 
    这里写图片描述

注:这仅仅是我个人的一点见解和使用心得,如有异议请留言指正,万分感谢

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sunpeng_sp/article/details/77393348
posted @ 2018-05-30 00:06  javaobject  阅读(22853)  评论(0编辑  收藏  举报