Android Studio Caused by: java.lang.ClassNotFoundException
遇到情况:
项目一直运行的很正常,最近在做友盟社会化分享的时候需要导入jar包,导入相关jar编译没问题一运行APP就报ClassNotFoundException,删除了jar包就一切正常了,当时一直以为是jar引用方法不对,但是后来发现我多写了几个函数后同样会报错,问题整整折腾了两天啊,查资料发现原来是因为我的应用中的Dex 文件方法数超过了最大值65536的上限,会引发这种问题。原因分析
Android系统中,一个App的所有代码都在一个Dex文件里面。Dex是一个类似Jar的存储了多有Java编译字节码的归档文件。因为Android系统使用Dalvik虚拟机,所以需要把使用Java Compiler编译之后的class文件转换成Dalvik能够执行的class文件。这里需要强调的是,Dex和Jar一样是一个归档文件,里面仍然是Java代码对应的字节码文件。当Android系统启动一个应用的时候,有一步是对Dex进行优化,这个过程有一个专门的工具来处理,叫DexOpt。DexOpt的执行过程是在第一次加载Dex文件的时候执行的。这个过程会生成一个ODEX文件,即Optimised Dex。执行ODex的效率会比直接执行Dex文件的效率要高很多。 但是在早期的Android系统中,DexOpt的LinearAlloc存在着限制: Android 2.2和2.3的缓冲区只有5MB,Android 4.x提高到了8MB或16MB。当方法数量过多导致超出缓冲区大小时,会造成dexopt崩溃,导致无法安装.
3.解决办法
1) 在项目目录下build.gradle中android中添加multiDexEnabled true
2) 集成类Application的类中添加代码MultiDex.install(this);
特地在此做个笔记同时也可以帮助遇到同样问题的朋友
Android Studio Caused by: java.lang.ClassNotFoundException相关推荐
- Android Studio项目报错:Caused by: java.lang.ClassNotFoundException: Didn't find class解决方案
错误描述: Caused by: java.lang.ClassNotFoundException: Didn't find class "XX" on path: DexPat ...
- Android Studio:Caused by: java.lang.ClassNotFoundException: Didn‘t find class “...“on path: DexPath*
目录 问题 解决 问题 项目报错: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.demo.te ...
- Caused by: java.lang.ClassNotFoundException: Didn't find class android.support.v4.view.ViewPager
Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.v4.view.ViewPag ...
- AndroidStudio的 Caused by java.lang.ClassNotFoundException Didn't find class com.gizwits.opensource.a
问题的出现 错误代码: java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.gizwits.ope ...
- Caused by: java.lang.ClassNotFoundException: Didn't find class com.zyh.testswiperefresh.MainActivit
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.zyh.testswiperefresh.MainAc ...
- IDEA里运行代码时出现Caused by: java.lang.ClassNotFoundException: org.apache.log4j.Logger的解决办法(图文详解)...
问题详情 运行出现log4j的问题 "C:\Program Files\Java\jdk1.8.0_66\bin\java" -Didea.launcher.port=7533 & ...
- Caused by: java.lang.ClassNotFoundException: javax.persistence.Entity
1.错误描写叙述 usage: java org.apache.catalina.startup.Catalina [ -config {pathname} ] [ -nonaming ] { -he ...
- Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type
在复习CGLIB动态代理时运行代码报如下错误,看错误提示,很明显是少了jar包. CGLIB的jar包已经引入,但是没用maven搭建项目,少了相关联的jar包依赖. 后面查到是少了asm.jar包. ...
- `Caused by: java.lang.ClassNotFoundException: javax.xml.bind.DatatypeConverter
在执行java包时,遇到了Caused by: java.lang.ClassNotFoundException: javax.xml.bind.DatatypeConverter 错误. 原因是因为 ...
最新文章
- CNN和VGGNet-16背后的架构
- Comparable接口和Comparator接口的比较
- mixin模式 python_总结了 90 条写 Python 程序的建议
- 通达信缠论买卖点公式_通达信缠论多空主图指标公式
- python的代码在哪写_python代码在哪里编写
- 吴恩达深度学习4.4笔记_Convolutional Neural Networks_人脸识别和神经风格转换
- 【HDOJ 3790】最短路径问题,Dijkstra最短路,双边权
- js排序算法详解-桶排序
- CSS, JavaScript 压缩, 美化, 加密, 解密
- 碰撞域与广播域的区别
- 拓端tecdat|用Python粒度分析及其在沉积学中应用研究
- Batch, Iteration,Epoch概念理解
- excel部分网格线不见了_EXCEL-绘制箱形图
- css+html实现时间轴
- Nginx--网页压缩与图片压缩
- 学会自己测天气系列八卦基础 01
- 设计之星 ai_漫画 |《钢铁之星》:AI肆虐的时代,夹杂人类阴谋
- 如何设置计算机桌面待办事项,电脑上怎么设置重要事情提醒?怎么在电脑桌面便签上设置重要事项提醒...
- 洛谷 P1548 [NOIP1997 普及组] 棋盘问题
- 微信获取用户地理位置
热门文章
- 亚马逊ERP系统无货源铺货ERP软件都有哪些套餐?都能带来什么好处?
- 快速了解shell常用内部命令和变量使用
- 乒乓球十一分制比赛规则_中国乒乓球队面临“十一分制”新考验
- 相亲了30次却还是单身
- html5视频video不全屏播放
- C4D R26 渲染学习笔记 建模篇(0):建模常识
- SpringBoot(23) 集成socket.io服务端和客户端实现通信
- 不要再来问我小学、初中毕业想出去学习编程找到工作的问题了,你要做就去做,结果自己扛着就行了!
- 毕业设计成品价格_计算机毕业设计成品.docx
- python量化app_量化一般用什么软件比较好,在哪里下载,还有一般量化的平台都有哪些呀?...