错误:Error:Android Dex: com.android.dex.DexIndexOverflowException: Cannot merge new index 65918 into a non-jumbo instruction!

例如以下图:

直接原因是Java代码太多,jar包太多。

谷歌官方文档已经有解决方式:http://developer.android.com/intl/zh-cn/tools/building/multidex.html

点击打开链接

eclipse的解决方式:在项目中的这个文件project.properties中加入一句话:dex.force.jumbo=true,如图:

Android studio 解决方式,须要几个步骤:

第一步,加入 multiDexEnabled = true,如图:

第二步。加入依赖于你的build.gradle支持MultiDex库。如图:

第三步分3个情况,

假设你没有创建自己的Application 类,在你的清单文件AndroidManifest.xml中配置android.support.multidex.MultiDexApplication就能够了。





android:name="android.support.multidex.MultiDexApplication" 





假设你有自己的Application类了。让它继承 android.support.multidex.MultiDexApplication而不是android.app.Application

假设你的Application继承了其它的类,而且你不想改变或者没办法改变。依照以下的方法重写attachBaseContext()。



@Override

protected void attachBaseContext(Context base) {

    super.attachBaseContext(base);

    MultiDex.install(this);

}

假设没有第二和第三步。可能有些手机执行时会报错,如图:

好了,又一次编译。能够通过了,又能够愉快的玩耍了……

解决Error:Android Dex: com.android.dex.DexIndexOverflowException: Cannot merge new index 65918 into a的更多相关文章

  1. com.android.dex.DexIndexOverflowException: Cannot merge new index 66299 into a non-jumbo instruction

    打包时控制台输出: Error:Execution failed for task ':app:transformClassesWithDexForAll32Release'. > com.an ...

  2. DexIndexOverflowException: Cannot merge new index 66080 into a non-jumbo instruction!

    问题 该问题是方法数超过了65536(DEX 64K problem),无法编译成单个dex文件. 解决方案 谷歌官方给出的解决方案 android { compileSdkVersion 21 bu ...

  3. Android Bug:Error:com.android.dex.DexException: Multiple dex files define Landroid/support/design/widget/CoordinatorLayout$LayoutParams;

    项目编译通过,运行时出现异常: Error:com.android.dex.DexException: Multiple dex files define Landroid/support/desig ...

  4. Error:Error converting bytecode to dex: Cause: com.android.dex.DexException: Multiple dex files define Lcom/lidroid/xutils/task/TaskHandler;

    Error:Error converting bytecode to dex: Cause: com.android.dex.DexException: Multiple dex files defi ...

  5. 解决com.android.dex.DexException: Multiple dex files define Lcom/google/gson/JsonSerializer;

    我在开发Windows Azure的Mobile Service(隔天补上创建过程)的安卓客户端时,报出了com.android.dex.DexException: Multiple dex file ...

  6. Android Studio:Multiple dex files define Landroid/support/annotation/AnimRes

    近期真的比較忙,一不小心博客又荒了两个月. 从今天起.决定重返csdn,多多纪录和分享. 先从一个近期被折磨的死去活来的问题. 由于升级了V4包,就一直报这个问题: com.android.dex.D ...

  7. Android Studio com.android.dex.DexException: Multiple dex files define(重复引用包),androiddefine

    Android Studio com.android.dex.DexException: Multiple dex files define(重复引用包),androiddefine 如果你用Andr ...

  8. Android Unable to execute dex: method ID not in [0, 0xffff]: 65536 问题解决方法

    开始一个新项目的时候,Build工程的时候一直报这个错误: 控制台报错误:Conversion to Dalvik format failed: Unable to execute dex: meth ...

  9. [转载] Android动态加载Dex机制解析

    本文转载自: http://blog.csdn.net/wy353208214/article/details/50859422 1.什么是类加载器? 类加载器(class loader)是 Java ...

随机推荐

  1. VS选项中没有C#相关设置选项?

    在VS中,行号的设置在工具-选项-文本编辑器,可里面没有VS,我还以为是之前卸载了SP1后造成的. 原来是因为,VS默认环境设置的VB,选项对话框左下角有"显示所有设置"的复选框, ...

  2. js slice 参数为负值

    示例代码 <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF- ...

  3. SpringMVC中使用-sqljdbc4.jar

    昨天将现在写的Web项目中的数据库由MySQL换成SQLServer,昨天想把MySQL重新安装一下,但是由于不明原因,导致无法安装. 卸载MySQL.删除安装文件.删除注册表.重启电脑.但是安装的时 ...

  4. unix 网络编程第八章 UDP

    code 见 https://github.com/juniperdiego/Unix-network-programming-of-mine/tree/master/udpserv01 1 建立so ...

  5. 如何下载flash离线安装包

      如何下载flash离线安装包 CreateTime--2018年4月14日16:02:13 Author:Marydon 1.下载地址 UpdateTime--2018年5月13日16点55分 p ...

  6. 多对一关系表 java类描述

    少的一方把它查询出来,多的一方看需求把它查出来 涉及java对象涉及到多个对象相互引用,要尽量避免使用一对多,或多对多关系,而应使用多对一描述对象之间的关系(或使用延迟加载的方式). 下个例子empl ...

  7. TFS2013以独占的方式签出

  8. C#获取文件的md5

    上代码: //获取MD5 public static string GetMd5Hash(String input) { if (input == null) { return null; } MD5 ...

  9. 5V系统和3.3V系统电平转换

    在设计一个带MCU或者ARM系统电路时候,经常遇见MCU的VCC是3.3V,但是外围电路需要5V.有时候是反过来.虽然现在MCU的IO都声称支持TTL电平,但是我们谁也不想将MCU的IO口直接接上5V ...

  10. mysql date and time type ---- mysql 时间&日期 类型详解

    mysql 中支持用多种方式来表示时间与日期 一.mysql 中能表示时间与日期的数据类型: 1.表示年 ) -- 最好不要用这个数据类型.对于年份的取值中有[1901 --> 2155] + ...