omitted for duplicate jar包冲突排查

12 篇文章 0 订阅
5 篇文章 0 订阅

1.maven的命令

mvn dependency tree 

可以将当前所有的依赖关系都展示出来,包括来自不同处的依赖项。

mvn dependency:tree -Dverbose

Dincludes 可以进行参数过滤

mvn dependency:tree -Dverbose -Dincludes=*spring*:*spring*

参考文档:https://www.jianshu.com/p/bbd5b0abcad1

2.idea工具

maven projects,idea更直观的展示jar的依赖,以及将冲突的jar包omitted表示

3.java.lang.Class的属性进行判断

通过获取Class的ProtectionDomain(给定代码资源和权限的一种新的保护范围),获取codeSource

上述工具类来源于:https://blog.csdn.net/RobertoHuang/article/details/81778181

可以在报错地方,调用上述工具类,查看类的具体来源jar包

4.阿里工具Arthas,可以直接线上排查jar冲突

具体的安装参考官网:https://alibaba.github.io/arthas/en/install-detail.html

主要是classloader命令

classloader -l

classloader -t

用ClassLoader去查找resource    其中1be6f5c3为LaunchedURLClassLoader的hash值

org.springframework.boot.loader.LaunchedURLClassLoader@1be6f5c3  12324        1be6f5c3

classloader -c 1be6f5c3  -r org/springframework/stereotype/Controller.class  

用ClassLoader去加载指定的类

classloader -c 1be6f5c3  --load com.sinochem.yunlian.truck.base.controller.BcAddressExcelController

 

  • 3
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值