出现java.lang.NoSuchMethodError错误的原因
作为Java开发者我们都遇到过java.lang.NoSuchMethodError错误,究其根源,是JVM的“双亲委托模型”引发的问题。如果在类路径下放置了多个不同版本的类包,如commons-lang2.x.jar 和 commons-lang4.x.jar 都位于类路径中,代码中用到了commons-lang4.x类的某个方法,而这个方法在commons-lang2.x.jar中并不存在,JVM加载器碰巧又从 commons-lang2.x.jar中加载类,运行时就会抛出 NoSuchMethodError的错误。
这种问题的排查通常是比较棘手的,特别是在Web应用中,类路径的系统目录比较多,特别实在类包众多时,情况尤其负责,你很难知道JVM到底从哪个类包中加载类文件。
目前,本人还没好的办法,待发现好的方法后再回来补上。若是有大牛有好的方法或者见解可以留言赐教,谢谢!
出现java.lang.NoSuchMethodError错误的原因的更多相关文章
- 如何排查java.lang.NoSuchMethodError错误
今天碰到一个java.lang.NoSuchMethodException的异常.基本解决思路是: 1.检查类所在jar包的版本是否正确. 2.检查是否有jar包冲突,比如加载了多个版本的xxx.ja ...
- Jmeter--thrift接口压测,调用jar包失败报错:java.lang.NoSuchMethodError:
调用thrift接口压测的jar包,出现了错误:java.lang.NoSuchMethodError: 错误可能的原因: 有这个类,该类真的没有这个方法 有这个类,而且有好几个,他们之间发生了冲突 ...
- Activity调用isDestroyed()方法报出,java.lang.NoSuchMethodError
在測试App的过程中,Activity调用了isDestroyed()方法,报出了java.lang.NoSuchMethodError错误. 自己手机MI 2S,版本号4.1.1. 事实上原因就是i ...
- Java java.lang.ExceptionInInitializerError 错误解决方案
引起 java.lang.ExceptionInInitializerError 错误的原因是:在类的初始化时,出错.也就是说,在加载类时,执行static的属性.方法块时,出错了. 比如 publi ...
- Cloudera集群中提交Spark任务出现java.lang.NoSuchMethodError: org.apache.hadoop.hbase.HTableDescriptor.addFamily错误解决
Cloudera及相关的组件版本 Cloudera: 5.7.0 Hbase: 1.20 Hadoop: 2.6.0 ZooKeeper: 3.4.5 就算是引用了相应的组件依赖,依然是报一样的错误! ...
- CDH下集成spark2.2.0与kafka(四十一):在spark+kafka流处理程序中抛出错误java.lang.NoSuchMethodError: org.apache.kafka.clients.consumer.KafkaConsumer.subscribe(Ljava/util/Collection;)V
错误信息 19/01/15 19:36:40 WARN consumer.ConsumerConfig: The configuration max.poll.records = 1 was supp ...
- 启动kafka时报scala相关错误:java.lang.NoSuchMethodError: scala.Predef$.ArrowAssoc()
1.报错现象: 启动kafka的时候启动失败,并且会报告下面的错误: java.lang.NoSuchMethodError: scala.Predef$.ArrowAssoc(Ljava/lang/ ...
- redis 集群java.lang.NoSuchMethodError:SpringJAR包版本冲突错误解决方法
项目中出现如下错误,记录下解决方法: org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exce ...
- elasticsearch client 为空 错误信息:java.lang.NoSuchMethodError: com.google.common.util.concurrent.MoreExecutors.directExecutor()Ljava/util/concurrent/Executor
错误信息:java.lang.NoSuchMethodError: com.google.common.util.concurrent.MoreExecutors.directExecutor() ...
随机推荐
- Instance Segmentation入门总结
前一阵子好忙啊,好久没更新了.最近正好挖了新坑,来更新下.因为之前是做检测的,而目前课题顺道偏到了instance segmentation,这篇文章简单梳理一下从检测.分割结果到instance s ...
- keras 保存模型
转自:https://blog.csdn.net/u010159842/article/details/54407745,感谢分享! 我们不推荐使用pickle或cPickle来保存Keras模型 你 ...
- C#发送电子邮件 (异步) z
///验证电子邮件的正则表达式 string emailStr = @"^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([ ...
- expdp指定时间戳导出防止数据不一致
expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dmp FLASHBACK_TIME=“TO_TIMESTAMP(’25-08-2004 14:35:00’,’ ...
- selenium+python 连接数据库
import MySQLdb connet=MySQLdb.connect( host='localhost', port='8808', user='amdin', password='** ...
- May 29th 2017 Week 22nd Monday
I figure life is a gift and I don't intend on wasting it. 我觉得生命是一份礼物,我不想浪费它. It seems that I didn't ...
- OC 内存管理(retain和release)
内存管理 retain和release简单使用 #import "Student.h" @implementation Student @synthesize age = _age ...
- 管道(Pipelines)模型
Pipeline模型最早被使用在Unix操作系统中.据称,假设说Unix是计算机文明中最伟大的发明,那么,Unix下的Pipe管道就是尾随Unix所带来的还有一个伟大的发明[1].我觉得管道的出现,所 ...
- CF235C 【Cyclical Quest】
厚颜无耻的发一篇可能是全网最劣解法 我们发现要求给定的串所有不同的循环同构出现的次数,可以直接暴力啊 因为一个长度为\(n\)的串,不同的循环同构次数显然是不会超过\(n\)的,所以我们可以直接对每一 ...
- [19/03/16-星期六] 常用类_Date时间类&DateFormat类
一.Date时间类 计算机中 以1970 年 1 月 1 日 00:00:00定为基准时间,每个度量单位是毫秒(1秒的千分之一) 用ong类型的变量来表示时间,如当前时刻数值:long now =n ...