失败演示:使用DexArchiveMergerException的transformDexArchiveWithExternalLibsDexMergerForMockDebug

时间:2017-09-18 13:26:23

标签: android google-cloud-messaging firebase-cloud-messaging

重建后我得到:

Error:Execution failed for task ':demo:transformDexArchiveWithExternalLibsDexMergerForMockDebug'.
> com.android.builder.dexing.DexArchiveMergerException: com.android.tools.r8.errors.CompilationError: Program type already present: com.google.android.gms.common.internal.zzag

该错误消息是什么意思?有什么问题?

3 个答案:

答案 0 :(得分:1)

当我用(较旧的)implementation替换gradle compile指令时,它可以正常工作。

答案 1 :(得分:0)

此错误的建议workaround是删除项目中的./gradle文件夹或删除所有构建文件夹和gradle缓存

其他参考资料:

  
      
  1. 删除.gradle目录。

  2.   
  3. 再次运行您的应用。

  4.         

    备注

         
        
    • .gradle目录位于项目的根文件夹中。 (您可能必须先显示隐藏文件。)
    •   
    • 每次使用Android 3.0更新依赖模块时,我都必须这样做。
    •   

希望这有帮助!

答案 2 :(得分:0)

此错误(以及任何其他Program type already present: com.google.android.gms.common.internal.xxxxxx错误)可能由不同的Play服务和Firebase版本引起。在此示例中,请确保所有 implementation 'com.google.android.gms:xxxx:12.0.0和所有implementation 'com.google.firebase:xxxxxx:12.0.0'具有相同的版本(12.0.0)。