首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > Ruby Rails >

分析NoClassDefFoundError异常的心得

2012-12-19 
分析NoClassDefFoundError错误的心得点击下面标题查看本文完整版:分析NoClassDefFoundError错误的心得分析

分析NoClassDefFoundError错误的心得
点击下面标题查看本文完整版:分析NoClassDefFoundError错误的心得

分析NoClassDefFoundError错误的心得,前几天紫竹群里有朋友提到自己遇到了NoClassDefFoundError错误,我们先来看看J2SE API中对这个错误描述:
当 Java 虚拟机或 ClassLoader 实例试图在类的定义中加载(作为通常方法调用的一部分或者作为使用 new 表达式创建的新实例的一部分),但无法找到该类的定义时,抛出此异常。

当前执行的类被编译时,所搜索的类定义存在,但无法再找到该定义。

我根据自己的经验,给出了排错的步骤:

1、排除低级错误:看看是否所搜索的类名与实际定义的类名不匹配,如大小写不一致,或少写多写字母等。如:new ClassName(); 而实际定义的类名是CClasName或者className
2、看看在所搜索的类定义中是否加了包名,而项目文件夹中却没有这个包的情况(往往是在别处拿人家的代码来用,却没有检查是否建立了相应的包),因为这种情况编译器是不会报错的,只会在编译时告诉JVM到时要加载这个类就到这个包去找,而实际上你并没有建立这个包或者你的这个类没有放到那个包中,JVM自然会报错。如:你在某个类中有package mypackage;这么一句,而你的这个类却不在这个包目录下,当运行你的程序,某个时候需要加载使用你的这个类时,JVM会报错。

3、看看是否环境变量有问题,这种情况在这里发生的机率很低了吧,呵呵,毕竟之前你的其他程序都应该是在正常运行的。当然,也不能否定这个情况,如:你没有设'.'这个当前目录的classpath时,有时也可能会出现这样的错误。

以上谨代表个人看法,因鄙人学习Java时间不长(一个月零23天),所以有纰漏之处,请各位斧正,谢谢!发此帖也算是练练脸皮,hoho。


------解决方法--------------------
沙发!给个一分吧!哈哈
------解决方法--------------------
ClassLoader 。。 forname.. 跟着学习学习。
------解决方法--------------------
顶一个,不错的心得
------解决方法--------------------
PQjava 的帖子,特来顶下o(∩_∩)o...
------解决方法--------------------
SF?

    

热点排行