记录上周末打包时碰到的一个问题

2018-09-17  本文已影响0人  Love零O

周末下班时被告知需要打包,以为打完包后就可以高高兴兴的回家了。然而却碰到了一个问题,没有打成功,原本周末愉悦的心情瞬间不美丽了。这里记录一下这个错误。
打包时的错误提示为:

Error:Execution failed for task ':app:transformDexWithDexForRelease'.
com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.dex.DexIndexOverflowException: Cannot merge new index 65868 into a non-jumbo instruction!

遇事不能慌,于是用谷歌百度了一下。原来是在编译生成.dex文件时因为方法数太多,无法生成.dex文件。这时想起了应该是刚引入的一个第三方库引起的。
知道了问题所在,就该对症下药了:

方法一:

在模块的build.gradle里配置:

android {
  dexOptions {
    jumboMode true
  }
}

方法二:

在模块的build.gradle找到defaultConfig ,增加 multiDexEnabled true即可.

图例
图片引用自niuzaiwenjie,如有问题,请告知删除

如此,就可以解决如上问题了。。。

文档参考:
解决“Cannot merge new index xxx into a non-jumbo instruction”的问题
android studio 打包错误:Error:Execution failed for task ':app:transformDexWithDexForRelease'

上一篇下一篇

猜你喜欢

热点阅读