您的位置:首页 > 编程语言 > Java开发

java.lang.NoSuchMethodError ljava/util/list

2017-02-10 09:38 423 查看
java.lang.NoSuchMethodError  ljava/util/list  异常  ljava/util/list  部分是告诉我们你的方法返回类型是什么。

其实异常命名已经很清楚的告诉我们发生异常的原因,就是 NoSuchMethodError ,人类语言就是方法找不到。

异常的意思我们很容易理解,主要是找出来哪些情况会导致这个异常出现。

根据异常意思去发散我们的思维,每个程序都是不一样的,原因也不一定一样。

方法没找到,是针对程序而言的,不用被自己误导(要以JVM的思维去考虑),我们明明已经写了方法,检查过也都没问题,但是就是报NoSuchMethodError 。这里需要强调一下,方法是写在类里面的,方法找不到,可能是类的原因。

1、java类没有及时编译。这个情况比较少,我们开发多数都是用IDE,会自动编译。发现异常,我们经常做的就是clean、重启。如果这些操作不能解决,基本上这个的因素不大。

2、如果不是自己写的方法,引用jar包问题(这个也经常遇到)。方法我们能看到,但是程序运行的时候找不到。java里面有package,也就是说,一样的名字,可能是包名不一样。我们写方法的类和最终调用的类,不是一个,只是类名一样。(也有可能是什么都一样,参数不一样,看异常的时候注意看仔细提示信息)

3、多个同名类问题。这个和2里面提到的差不多个意思。举个例子,maven里面有模块,模块可以看作是独立的项目。这个时候是有可能存在这么一种情况的,模块a和模块b里面存在一个包名、类名一样的java类。这个时候,jvm加载的时候(....此处省略1万字,jvm加载顺序,别问我,我编的可能不太正确,自己看书去吧),所以也会导致最终调用的类其实不是我们想要调用的那个。

先记录这些,以后遇到其余情况再补补。

PS:补就别指望了。记得刚入行的时候,每天遇到的知识点,问题都记录成word文档,随着跳槽换工作,已经找不到了,后来用的在线日志也都懒得登录帐号。

现在开始用博客记录(2017年了还没有过微博帐号的老顽固,开始写博客,进步很大了)。别吐槽写的和记账一样,回想中学时代,坐在教室里,看着那个我看他不爽,他看我

也不爽的班主任,重点是语文老师,他在那激情澎湃的讲作文,他生物特征是活着,其实在我心里已经死了很久了....这就是语文老师死的早,是不会写出来好博客的,你就将就着看吧。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐