当我尝试在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
第一条路径似乎表明它是一个“缓存”文件...所以我尝试了
无效化和重新启动我的缓存
,但在gradle重新构建并尝试运行
应用程序后仍然存在两个文件。我在其他帖子中读到,可以通过删除其中一个文件来解决这个问题...所以我去了缓存位置并删除了“1.4.9”文件夹中找到的所有文件...不幸的是,在重新打开Android Studio后,会创建一个新的缓存文件,并出现相同的错误。其他帖子(这里,这里,这里和这里)建议如果我在根目录添加"./gradlew clean",它将再次重建gradle仅供运行使用(就我所知)。所以我也试着做了这个: 这使得我的应用程序文件夹看起来像这样: 但不幸的是,这并没有帮助我解决问题,我仍然得到相同的错误。我做错了什么?我应该做什么?