zoukankan      html  css  js  c++  java
  • AndroidStudio进行Build时出现DexArchiveMergerException异常的解决办法

    今天在AndroidStudio中导入了一个项目,编译的时候没有什么问题,但是在执行Rebuild Project 和 Build APK(s)时报错了,提示:

    Error:Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'.

    > java.lang.RuntimeException: java.lang.RuntimeException: 

    com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex。

    为了避免以后遇到时忘记了,所以把解决方法写出来保存一下,希望也能对各位同学提供点帮助。如果有些的不对的地方,也欢迎大家批评指正,在此表示感谢!

    解决办法一:

            在项目的build.gradle文件中查看自己导入的依赖,看看是否有重复的,如果有的话删除掉,重新进行编译。

    解决方法二:

       倘若在上一种解决方法没有效果,再检查一下build.gradle中是否有类似

     compile(name: 'class', ext: 'jar')  

      这样的代码,如果有的话,可以修改为下面这种写法:

      compile files('libs/class.jar')  

    解决方法三:

       如果上述两种都没有解决问题,可以使用这种方法, 在build.gradle文件中导入这个依赖:

      compile 'com.android.support:multidex:1.0.1'  

    然后在 build.gradle 文件中的 defaultConfig 配置中添加配置:   

     multiDexEnabled true  

        截图如下:

            

            我就是使用这种方法解决了这个问题,上面的依赖记得要添加到build.gradle文件中去。

    解决方法四:

            我看到还有另外的解决方法,就是先将项目的.gradle文件夹给删除掉,然后 Clean Project 即可。

            这个方案我也尝试了一下,并没有解决我遇到的这种情况,不过大家也可以尝试一下,

            可能产生问题的原因不一样,也许能够解决别的情况。

  • 相关阅读:
    定义和使用EL函数
    在Java Web程序中使用Hibernate
    JDBC在Java Web中的应用——分页查询
    JDBC调用存储过程
    使用navicat工具创建MySQL存储过程
    JDBC操作数据库的批处理
    JDBC操作数据库
    Servlet监听器统计在线人数
    Servlet字符编码过滤器
    Servlet过滤器创建与配置
  • 原文地址:https://www.cnblogs.com/zhujiabin/p/8920523.html
Copyright © 2011-2022 走看看