首页 > 学院 > 开发设计 > 正文

如何排查java.lang.NoSuchMethodError错误

2019-11-15 00:58:45
字体:
来源:转载
供稿:网友
如何排查java.lang.NoSuchMethodError错误

今天碰到一个java.lang.NoSuchMethodException的异常。基本解决思路是:

1、检查类所在jar包的版本是否正确。

2、检查是否有jar包冲突,比如加载了多个版本的xxx.jar。

如果是maven工程,可以通过mvn dependency:tree来显示工程的依赖树。

3、如果还无法定位,可以通过以下方法来找到工程实际加载的类属于哪个jar包。

1 Class<?> clazz = Class.forName("com.xxx.xxx.XXX"); # 类名2 CodeSource cs = clazz.getPRotectionDomain().getCodeSource();3 String location = cs.getLocation().getPath();4 System.out.println(location); 

以上代码没有带异常处理,自己加。

通过以上方法判断实际加载的类是否符合预期,再做处理。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表