Ionic3项目仿真Android报错及build.gradle恢复旧配置问题
sudo ionic cordova emulate android的Jar包重复冲突问题 我之前在Ionic 3项目里执行sudo ionic cordova emulate android时,也踩过这个一模一样的坑!当时直接抛出了任务':transformClassesWithJarMergingForDebug'执行失败的提示,具体报错信息是:
com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: com/google/android/gms/internal/zzcar.class
这个问题的核心原因是Google Play Services相关依赖的版本不统一,导致打包过程中出现了重复的类文件。下面是亲测有效的解决步骤:
统一所有Google Play Service依赖的版本
找到项目中所有涉及com.google.android.gms的依赖配置(包括项目根目录的build.gradle和模块下的build.gradle文件),确保它们的版本号完全一致。比如如果你的某个依赖用的是11.8.0,那所有相关的Google Play Services依赖都要同步成这个版本,不能出现有的是11.8.0、有的是12.0.1这种情况。恢复
build.gradle至旧配置
如果你之前修改过build.gradle的打包或依赖管理配置(比如升级了插件、调整了依赖规则),可以尝试恢复到之前能正常编译的旧版本配置,避免因配置变更引入的版本冲突问题。
最后,别忘了清理项目缓存再重新编译,执行以下命令:
ionic cordova clean android sudo ionic cordova emulate android
内容的提问来源于stack exchange,提问作者Abhitesh khatri

