java反射调用方法NoSuchMethodException的解决方案
java反射调用方法NoSuchMethodException
1、方法定义成 public类型.
2、getMethod传参要正确
- 比如调用定义的:public void show(Object obj)
- 要这样调用 clazz.getMethod("show",Object.class);而不是obj.class
3、invoke时invoke(this,obj)
- 传参要正确,看好传的是对象,this是调用该方法的类实例对象,obj是方法的实参
NoSuchMethodException问题总结
1、编译异常,这个很容易发现并解决
- method真的没有
- 替换jar包没有clean project。
2、编译正常,运行报错
这是一个遇到之后让人纳闷的异常,脑袋不转弯的时候真的容易被卡住。
这时只要去编译目录下:
1)查看下相应的jar包是否被引入;如果没有,咋把jar包拷入相应的目录;pom项目的话则检查下依赖的scope是不是provided等不随项目一起发布的配置。
2)检查下对应的jar包是否存在多个版本,导致没有加载期望的jar包,我遇到的问题就是这样的。
3)重新导入项目,下策,但是绝大多数情况有效。但有时候因为项目很复杂、时间紧张等原因不适合这么做。
4)如果以上方法试了,没有别的解决方式。实在搞不定,找人帮忙解决。浪费太多时间在环境问题上,不明智,也没啥丢人的,有时候可能只是说一说自己就明白了。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
SpringBoot实现WebSocket全双工通信的项目实践
本文主要介绍了SpringBoot实现WebSocket全双工通信的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2023-05-05Java Druid连接池与Apache的DBUtils使用教程
这篇文章主要介绍了Java Druid连接池与Apache的DBUtils使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2022-12-12在Spring Data JPA中引入Querydsl的实现方式
这篇文章主要介绍了在Spring Data JPA中引入Querydsl的实现方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2021-01-01Springboot+Vue+shiro实现前后端分离、权限控制的示例代码
这篇文章主要介绍了Springboot+Vue+shiro实现前后端分离、权限控制的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-07-07
最新评论