【发布时间】:2016-08-27 16:01:23
【问题描述】:
当我尝试在 Android 设备上 run 我的 android 应用程序时,gradle 控制台报告以下错误:
Error:Execution failed for task ':app:transformClassesWithJarMergingForDebug'.
> com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: com/loopj/android/http/AsyncHttpClient$1.class
当我搜索“AsyncHttpClient”类时,我发现它确实存在于两个不同的位置:
/Users/Afflatus/.gradle/caches/modules-2/files-2.1/com.loopj.android/android-async-http/1.4.9/5d171c3cd5343e5997f974561abed21442273fd1/android-async-http-1.4.9-sources.jar!/com/loopj/android/http/AsyncHttpClient.java
/Users/Afflatus/.ideaLibSources/android-async-http-1.4.9-sources.jar!/com/loopj/android/http/AsyncHttpClient.java
第一个路径似乎表明它是一个“缓存”文件......所以我尝试了invalidating & restarting my cache,但是在 gradle 重建后这两个文件仍然存在,我尝试run 应用程序。我在备用posts 中读到它可以通过删除其中一个文件来解决......所以我去了缓存位置并删除了在“1.4.9”文件夹中找到的所有文件......不幸的是重新打开后Android Studio,创建了一个新的缓存文件,我得到了同样的错误。
其他帖子(here、here、here 和 here)建议如果我将“./gradlew clean”添加到根目录,它将再次重建 gradle 以供运行(到目前为止我认为)。所以我也尝试这样做:
这使我的应用程序的文件夹看起来像这样:
但不幸的是,这并没有帮助我仍然遇到同样的错误。我究竟做错了什么?我该怎么办?
【问题讨论】:
-
请问你是怎么解决你的问题的,我遇到的问题和你的一模一样。
-
@DavidCheung 我不认为我解决了它。我想我尝试了安德斯的建议,但似乎对我的特殊情况没有任何作用。也许它会适合你的?
-
有同样的问题。花了几个小时寻找无济于事的解决方案。
-
你可以在这里找到好资料:stackoverflow.com/questions/56029393/…
标签: android gradle android-gradle-plugin build.gradle loopj