【java】java类/方法冲突解决工具

目录下查找包含特定名称(如:类名称)的Jar包

上代码:

比如要查找含有类 “org/apache/avro/Schema” 的:

# 方法一
# 此方法只能查找到内容(比如:类名称)。但是不能打印jar名称
find . -name "*.jar"|awk '{print "jar -tvf "$1}' | sh | grep "org/apache/avro/Schema"

# 方法二
# 此方法只能查找到内容(比如:类名称)。但是不能打印jar名称
find . -name "*.jar" -exec jar -tf {} \; | grep avro

# 方法三
# 此方法通过删除参数 -q (quiet) 可以 选择是否打印实际找到内容(比如:类名称)
find . -name '*.jar' | while read jarfile; do if jar tf "$jarfile" | grep org/apache/avro/Schema -q; then echo "$jarfile"; fi; done

在这里插入图片描述

java启动打印类加载状态

# 只需要加入-verbose:class选项即可
# 比如:
java -verbose:class -classpath your.jar your.class

参考文章:
Java - java.lang.NoSuchMethodError: xxx 错误详解 文章介绍了-verbose:class使用方法。
ClassLoader—观察程序运行时类加载的过程-verbose:class 文章介绍了-verbose:class使用方法。
解析java字节码 NoSuchMethodError等 对应的参数列表类型可以参考此文章。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值