运行Flutter应用出现类重复冲突问题求助
解决Play Core重复类冲突问题
问题分析
你遇到的是Google Play Core库的版本冲突:旧版完整com.google.android.play:core:1.8.0和新版拆分后的core-common、review模块存在重复类,导致编译时checkDuplicateClasses任务失败。
从你的pubspec配置来看,冲突核心来源是in_app_review: ^2.0.6——这个包会引入新版的com.google.android.play:review模块,而项目中其他依赖(如Firebase系列或第三方SDK)间接引入了旧版的完整Play Core包,二者类定义重复引发报错。
解决步骤
方法1:全局排除旧版Play Core依赖
在Flutter项目的android/app/build.gradle中,添加全局排除规则,强制所有依赖使用拆分后的新版模块:
configurations { all { exclude group: 'com.google.android.play', module: 'core' } }
方法2:强制统一Play Core模块版本
如果排除法导致其他功能异常,可在android/build.gradle的allprojects块中指定统一版本:
allprojects { repositories { // 保留现有仓库配置 } configurations.all { resolutionStrategy { force 'com.google.android.play:core-common:2.0.2' force 'com.google.android.play:review:2.0.1' } } }
方法3:升级冲突依赖
检查pubspec中可能引入旧版Play Core的依赖(如部分Firebase库、第三方SDK),尝试升级至最新版本,新版本通常已适配拆分后的Play Core模块。
验证操作
- 执行
flutter clean清理缓存 - 删除项目
android/.gradle和build文件夹 - 重新运行
flutter run编译项目
内容的提问来源于stack exchange,提问作者Acorcdev
相关产品推荐
相关产品推荐

