设为首页 加入收藏

TOP

如何排查java.lang.NoSuchMethodError错误
2015-08-31 21:25:26 来源: 作者: 【 】 浏览:585
Tags:如何 排查 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);


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


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


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇20个高级Java面试题汇总 下一篇Struts2结果类型(Result Types)

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: