You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android项目运行时出现ZipException重复类错误求助

解决Android项目Jar合并时的重复类错误

你遇到的Execution failed for task ':app:transformClassesWithJarMergingForDebug'错误,核心原因是项目中重复引入了同一个Google Play Services类文件(com/google/android/gms/location/places/zzl.class),导致打包时Jar合并冲突。

问题根源分析

从你的依赖配置来看,com.schibstedspain.android:leku:2.3.1这个第三方库内部已经依赖了Google Play Services的Places相关组件,而你又直接在项目中引入了com.google.android.gms:play-services-location:11.8.0(Places模块属于Location库的一部分),两者的依赖版本不一致或者重复打包,就会触发这个重复类错误。

具体解决方案

1. 排查依赖冲突(可选但推荐)

先确认leku库依赖的Google Play Services版本,运行以下Gradle命令查看完整依赖树:

./gradlew app:dependencies

或者在Android Studio右侧的Gradle面板中,找到app -> Tasks -> android -> androidDependencies并运行,在输出中查找leku对应的com.google.android.gms依赖项,确认其版本。

2. 排除leku中的重复依赖

修改app/build.gradle中的leku依赖,排除它内部的Google Play Services相关模块,让它使用你项目中统一的11.8.0版本:

compile ('com.schibstedspain.android:leku:2.3.1') {
    exclude group: 'com.google.android.gms'
}

3. 保持依赖版本一致性

确保所有Firebase和Google Play Services的依赖版本完全一致(你当前配置的11.8.0是统一的,这点很好,继续保持),避免不同版本的库带来的冲突。

4. 清理并重建项目

在Android Studio中执行:

  • 菜单栏Build -> Clean Project
  • 然后Build -> Rebuild Project
    清理旧的编译缓存,确保新的依赖配置生效。

额外注意事项

  • 你已经开启了multiDexEnabled true,这对解决多DEX问题有帮助,无需调整。
  • 检查libs目录下的jar文件,确保没有包含和Google Play Services相关的重复类文件(当前配置中gson-1.7.1.jar不会引发这个冲突)。

内容的提问来源于stack exchange,提问作者Moody Moadi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 06:31:39