1. 遇到情况:
    项目一直运行的很正常,最近在做友盟社会化分享的时候需要导入jar包,导入相关jar编译没问题一运行APP就报ClassNotFoundException,删除了jar包就一切正常了,当时一直以为是jar引用方法不对,但是后来发现我多写了几个函数后同样会报错,问题整整折腾了两天啊,查资料发现原来是因为我的应用中的Dex 文件方法数超过了最大值65536的上限,会引发这种问题。

  2. 原因分析
    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相关推荐

  1. Android Studio项目报错:Caused by: java.lang.ClassNotFoundException: Didn't find class解决方案

    错误描述:  Caused by: java.lang.ClassNotFoundException: Didn't find class "XX" on path: DexPat ...

  2. 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 ...

  3. 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 ...

  4. 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 ...

  5. 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 ...

  6. 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 & ...

  7. Caused by: java.lang.ClassNotFoundException: javax.persistence.Entity

    1.错误描写叙述 usage: java org.apache.catalina.startup.Catalina [ -config {pathname} ] [ -nonaming ] { -he ...

  8. Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type

    在复习CGLIB动态代理时运行代码报如下错误,看错误提示,很明显是少了jar包. CGLIB的jar包已经引入,但是没用maven搭建项目,少了相关联的jar包依赖. 后面查到是少了asm.jar包. ...

  9. `Caused by: java.lang.ClassNotFoundException: javax.xml.bind.DatatypeConverter

    在执行java包时,遇到了Caused by: java.lang.ClassNotFoundException: javax.xml.bind.DatatypeConverter 错误. 原因是因为 ...

最新文章

  1. CNN和VGGNet-16背后的架构
  2. Comparable接口和Comparator接口的比较
  3. mixin模式 python_总结了 90 条写 Python 程序的建议
  4. 通达信缠论买卖点公式_通达信缠论多空主图指标公式
  5. python的代码在哪写_python代码在哪里编写
  6. 吴恩达深度学习4.4笔记_Convolutional Neural Networks_人脸识别和神经风格转换
  7. 【HDOJ 3790】最短路径问题,Dijkstra最短路,双边权
  8. js排序算法详解-桶排序
  9. CSS, JavaScript 压缩, 美化, 加密, 解密
  10. 碰撞域与广播域的区别
  11. 拓端tecdat|用Python粒度分析及其在沉积学中应用研究
  12. Batch, Iteration,Epoch概念理解
  13. excel部分网格线不见了_EXCEL-绘制箱形图
  14. css+html实现时间轴
  15. Nginx--网页压缩与图片压缩
  16. 学会自己测天气系列八卦基础 01
  17. 设计之星 ai_漫画 |《钢铁之星》:AI肆虐的时代,夹杂人类阴谋
  18. 如何设置计算机桌面待办事项,电脑上怎么设置重要事情提醒?怎么在电脑桌面便签上设置重要事项提醒...
  19. 洛谷 P1548 [NOIP1997 普及组] 棋盘问题
  20. 微信获取用户地理位置

热门文章

  1. 亚马逊ERP系统无货源铺货ERP软件都有哪些套餐?都能带来什么好处?
  2. 快速了解shell常用内部命令和变量使用
  3. 乒乓球十一分制比赛规则_中国乒乓球队面临“十一分制”新考验
  4. 相亲了30次却还是单身
  5. html5视频video不全屏播放
  6. C4D R26 渲染学习笔记 建模篇(0):建模常识
  7. SpringBoot(23) 集成socket.io服务端和客户端实现通信
  8. 不要再来问我小学、初中毕业想出去学习编程找到工作的问题了,你要做就去做,结果自己扛着就行了!
  9. 毕业设计成品价格_计算机毕业设计成品.docx
  10. python量化app_量化一般用什么软件比较好,在哪里下载,还有一般量化的平台都有哪些呀?...