异常 Caused by: java.lang.ClassNotFoundException: Didn‘t find class “...“on path: DexPathList

解决方法:
Android的项目目录里是有两个build文件夹的,一个是:项目目录/app/build,另一个是:项目目录/build。

Build->Clean Project 把两个build都删掉,然后重新编译运行即可。

注意:在提交代码的时候两个build是不应该提交的。

参考:
安卓开发-Didn’t find class “” on path: DexPathList 错误

额外知识:
dex文件:

在Android系统中,dex文件是可以直接在Dalvik虚拟机中加载运行的文件。通过ADT,经过复杂的编译,可以把java源代码转换为dex文 件。 那么这个文件的格式是什么样的呢?为什么Android不直接使用class文件,而采用这个不一样文件呢?其实它是针对嵌入式系统优化的结 果,Dalvik虚拟机的指令码并不是标准的Java虚拟机指令码,而是使用了自己独有的一套指令集。如果有自己的编译系统,可以不生成class文件, 直接生成dex文件。dex文件中共用了很多类名称、常量字符串,使它的体积比较小,运行效率也比较高。但归根到底,Dalvik还是基于寄存器的虚拟机 的一个实现。

build文件夹: 
代码编译后生成的文件存放的位置

之前一直报这个错误, 不知道是怎么回事,看到这篇文章被解救了, 在此之前没有注意过这个问题, 以后 编译两个build文件真是需要注意一点。 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值