java.lang.NoClassDefFoundError异常
来源:互联网 发布:2016八月经济数据 编辑:程序博客网 时间:2024/05/07 02:46
昨晚在部署时出的问题,总结下。
java.lang.NoClassDefFoundError异常?
错误信息:
java.lang.NoClassDefFoundError:Could not initialize class com.xxx.RedisUtils
java.lang.NoClassDefFoundError:
Thrown if the Java Virtual Machine or a ClassLoader instance tries to load in the definition of a class (as part of a normal method call or as part of creating a new instance using the new expression) and no definition of the class could be found.The searched-for class definition existed when the currently executing class was compiled, but the definition can no longer be found.
简单理解就是类加载器试图加载类的定义,但是找不到这个类的定义,而实际上这个类文件是存在的(说就是在加载这个类文件时出错)。
与之类似的是:
java.lang.ClassNotFoundException:
Thrown when an application tries to load in a class through its string name using:1. The forName method in class Class.2. The findSystemClass method in class ClassLoader .3. The loadClass method in class ClassLoader.but no definition for the class with the specified name could be found.
因为类文件没有找到报错。
分析:
1.首先存在RedisUtils.class文件;
2.怀疑在初始化class文件时出错,那么就需要考虑static修饰的变量,这些变量都是在加载类时实例化的;
private static final String PREFIX = ""; private static final String SINGLETONFLAG = ""; private static final String VALUES = ""; private static final int TIME = Integer.parseInt(ConfigUtil.getConfigByName("")); //标示 private static final ThreadLocal<Boolean> FLAG = new ThreadLocal<Boolean>() { @Override protected Boolean initialValue() { return Boolean.TRUE; } };
其中嫌疑最大的是Integer.parseInt(ConfigUtil.getConfigByName(“”));因为参数如果为空会发生异常,那么这个类的实例化就会失败;这个参数是从配置文件中取出的检测正式服务器上配置文件果然这个配置不见了。
3.更改配置文件后问题得到解决。
0 0
- java.lang.NoClassDefFoundError异常
- java.lang.NoClassDefFoundError异常
- Tomcat7异常 java.lang.NoClassDefFoundError
- java.lang.NoClassDefFoundError 异常解读
- java.lang.NoClassDefFoundError:异常解决
- 一个异常:java.lang.NoClassDefFoundError
- java.lang.NoClassDeffoundError异常处理
- java.lang.NoClassDefFoundError: javax/mail/Authenticator异常
- displaytag 报 java.lang.NoClassDefFoundError 异常
- [异常解决]java.lang.NoClassDefFoundError: antlr/ANTLRException
- JDK配置:java.lang.NoClassDefFoundError异常
- 异常 java.lang.NoClassDefFoundError:javax/persistence/EntityListeners
- java.lang.NoClassDefFoundError: javax/el/ExpressionFactory异常
- java.lang.NoClassDefFoundError: javax/el/ExpressionFactory异常
- java.lang.NoClassDefFoundError: javax/el/ExpressionFactory异常
- java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing 异常
- 如何解决ADT1异常 java.lang.NoClassDefFoundError
- java.lang.NoClassDefFoundError: javax/el/ExpressionFactory异常
- 关于Ceph现状与未来的一些思考
- EditText默认不获得焦点
- 字节与字符_字节流与字符流_ASCII与Unicode_GB2312_GBK_GB18030_BIG-5
- 设计模式之策略模式
- 获取当前应用程序的版本号
- java.lang.NoClassDefFoundError异常
- Python基础教程(第2版•修订版)代码清单2-3 勘误
- Linux arp --操作ARP缓存
- Linux awk --对文本和数据进行处理
- 串口输出和按键消抖
- 使用弱引用指向内部变量时的注意事项.jpg
- poj1185 炮兵阵地
- Linux base64 --用base64编解码
- BufferedReader和BufferedWriter