Kotlin 1.6与Firebase Auth KTX Granule版本不兼容问题求助
问题分析与解决方案
问题根源
你遇到的错误核心原因是:Firebase BOM 32.2.3版本依赖的firebase-auth-ktx模块是用Kotlin 1.8编译的,而你的项目使用的Kotlin版本为1.6.10,二者元数据版本不兼容,常规的清理重建、清空缓存操作无法解决版本不匹配的本质问题。
解决方案
以下两种方案任选其一即可:
方案1:升级项目Kotlin版本(推荐)
将项目Kotlin版本升级到1.8.x稳定版,匹配Firebase依赖的编译版本:
- 修改Project级build.gradle中的
kotlin_version:
buildscript { ext.kotlin_version = "1.8.22" // 可使用Kotlin 1.8系列最新稳定版 // 其他配置保持不变 }
- 同步升级Android Gradle Plugin(AGP)版本,确保与Kotlin 1.8兼容(需AGP 7.4.x及以上):
classpath 'com.android.tools.build:gradle:7.4.2' // 匹配Kotlin 1.8的AGP版本
- 执行
File > Sync Project with Gradle Files,之后清理并重建项目。
方案2:降级Firebase BOM版本
如果暂时不想升级Kotlin,可以将Firebase BOM降级到兼容Kotlin 1.6的版本(如31.x.x系列):
修改Project级build.gradle中的firebase_bom_version:
buildscript { ext.firebase_bom_version = "31.5.0" // 兼容Kotlin 1.6的Firebase BOM版本 // 其他配置保持不变 }
同步项目后清理重建即可。
额外注意事项
你的Project级build.gradle中重复定义了core_ktx_version,先设置为1.6.0又覆盖为1.8.0,建议删除重复行,统一版本号,避免依赖混淆:
// 删除重复的ext.core_ktx_version = "1.6.0",保留一行即可 ext.core_ktx_version = "1.8.0"
内容的提问来源于stack exchange,提问作者Abhishek kumar
相关产品推荐
相关产品推荐

