电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

开发环境,NoSuchMethodError异常原因排查和解决

来源:金蝶云社区作者:金蝶2024-09-235

开发环境,NoSuchMethodError异常原因排查和解决


1 问题描述

  开发环境,苍穹日志出现NoSuchMethodError异常。以下图为例,com.alibaba.dubbo.config.ProviderConfig报错,其setInstanceId方法没有找到。


2 整体思路

(1)根据异常堆栈,找到全限定名(包名+类名)

(2)idea编辑器中,双击shift,全局搜索类文件,查找类冲突的jar包

(3)解决方式:如果确认是类冲突,可以在gradle中,配置加载顺序。java类加载器遵循 首次加载原则,让正确的类被首次加载,即可解决问题。


3 排查流程案例

以上述异常为例,详细排查流程如下

(1)根据上图的调用堆栈可以得知,DubboBeanManager在调用ProviderConfig的setInstanceId方法时,抛出了NoSuchMethodError异常。

(2)查找DubboBeanManager的import,发现引入了com.alibaba.dubbo.config.ProviderConfig这个类


(3)idea编辑器中,双击shift,全局搜索类文件,发现存在两个com.alibaba.dubbo.config.ProviderConfig类,但是所在的jar包不一样。一个在bos-mservice-dubbox-1.0.jar,另一个在dubbo-2.8.4.jar


(4)对比两个ProviderConfig,发现bos-mser

开发环境,NoSuchMethodError异常原因排查和解决

1 问题描述 开发环境,苍穹日志出现NoSuchMethodError异常。以下图为例,com.alibaba.dubbo.config.ProviderConfig报错,其setInstanceI...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信