您的位置首页生活百科

NoClassDefFoundError错误的解决办法 (安卓)

NoClassDefFoundError错误的解决办法 (安卓)

的有关信息介绍如下:

NoClassDefFoundError错误的解决办法 (安卓)

这个类型错误的具体实例。在分析之前,我们必须明白JAVA Classloader的基本原理。Classloader是一个java对象,它负责load所有的Class,负责查找、加载、生成一个class的基本定义信息。Classloader自身采用了委托代理机制来查询class,每一个Classloader的实例都有一个父Classloader。

比如创建了一个简单的程序来测试界面但是出现NoClassDefFoundError。深入说一下这个程序的问题:test1.jar和test2.jar。

test1程序包含一个testClass类和一些方法并导出为test1.jar文件。

在test2工程中加入test1.jar到lib文件夹,此工程中test2class含有方法能够调用test1.jar的类,同样导出为test2.jar文件。当在另外一个工程中使用test2.jar的时候,访问出现了问题,NoClassDefFoundError错误出现了。

删除所有库项目,然后clean。

选中第一个项目Test1的右键点击属性 - > Android- >检查入库。

选中第二个项目的Test2右键点击属性 - > Android在库部分中选择添加 - >添加的第一个项目为入库。

进入第二个项目的Test2右键点击属性 - > Android->检查入库。

进入第三个项目暂且叫T右键单击属性 - > Android- >在库部分中选择添加 - >添加test1和test2入库。 (不要把T加入库)

Clean 所有项目然后运行T