android多dex打包问题

来源:互联网 发布:ati mac驱动放在哪里 编辑:程序博客网 时间:2024/05/12 00:27

将android-support-multidex.jar放到libs下然后编译,出现如下错误:

Error:Execution failed for task ':app:packageAllDebugClassesForMultiDex'.> java.util.zip.ZipException: duplicate entry: android/support/multidex/MultiDex.class

原因是引入了多个相同的包,但是libs下明明就只有这一个包啊,经过各种尝试,最终解决方案如下:
1. 将本机的sdk的support升级到最新版本:
sdk mgr
如果因为网络原因无法下载的可以从这里下载,然后将下载的jar包放到本地sdk目录下的~\extras\android\support\multidex\library\libs目录下;
2. 在gradle脚本的dependencies中加入compile 'com.android.support:multidex:1.0.0',并从工程的libs目录下删除multidex包,gradle会自动去sdk目录下面找(注意并不是去repositories下载,repositories中是没有这个包的,所以我们需要做第一步);
3. 再次编译就可以正常工作了。

3 0