提示:Jdk1.8,工具:idea2019.2,仅供参考,欢迎指正。
一、NoSuchMethodException异常
示例:java.lang.NoSuchMethodException: com.xxx.方法名(java.util.Map)
1,先看一下方法的源码: (java.lang.Class#getMethod):
看到图片中,异常原因:1,找不到方法,2,方法名为‘init’ 或者 ‘clinit’
解决方式:1,检查方法方法访问类型是否为(public),其他访问权限则是使用(getDeclaredMethod);2,检查方法中的参数数量,类型是否匹配;3,检查方法内是否存在执行失败的可能;4,检查target的class类文件是否更新
二、InvocationTargetException异常
示例:java.lang.reflect.InvocationTargetException
1,先看一下方法的源码: (java.lang.reflect.Method#invoke):
看错误原因,则是比较明显:就是底层方法运行错误
解决方式:1,检查方法内部报错原因