Flutter Android项目Kotlin版本不匹配求助:Firebase Auth版本冲突
解决Flutter Android项目Kotlin版本不匹配问题
针对你遇到的firebase-auth-23.2.0用Kotlin 2.1.0编译、但项目期望1.9.0的版本冲突问题,提供以下几种可行解决方案:
方案1:升级项目Kotlin版本到兼容2.1.0的版本
Firebase Auth 23.2.0依赖Kotlin 2.1.0,需同步升级项目的Kotlin配置:
- 修改项目级
android/build.gradle中的Kotlin插件版本:buildscript { ext.kotlin_version = "2.1.0" dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" // 保留其他原有依赖(如Gradle插件、Firebase插件等) } } - 升级Gradle版本到8.7及以上(Kotlin 2.1.0要求最低Gradle 8.7),修改
android/gradle/wrapper/gradle-wrapper.properties:distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-all.zip
方案2:降级Firebase Auth版本适配现有Kotlin 1.9.0
若不想升级Kotlin,可将Firebase Auth降级到兼容Kotlin 1.9.x的版本:
- 在应用级
android/app/build.gradle中指定兼容版本,推荐使用Firebase BOM统一管理版本:dependencies { // 替换原有Firebase BOM版本为适配的32.7.0(对应Auth 22.3.1) implementation platform('com.google.firebase:firebase-bom:32.7.0') implementation 'com.google.firebase:firebase-auth' } - 也可直接指定Auth具体版本:
implementation 'com.google.firebase:firebase-auth:22.3.1'
方案3:强制统一所有依赖的Kotlin标准库版本
通过Gradle的依赖解析策略,强制所有第三方依赖使用项目指定的Kotlin版本:
在项目级android/build.gradle的allprojects块中添加:
allprojects { repositories { // 保留原有仓库配置(如google()、mavenCentral()等) } configurations.all { resolutionStrategy { // 替换为你项目要使用的Kotlin版本(如1.9.20) force "org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.9.20" force "org.jetbrains.kotlin:kotlin-stdlib:1.9.20" force "org.jetbrains.kotlin:kotlin-reflect:1.9.20" } } }
最后执行清理构建
完成配置修改后,执行以下命令确保缓存清理干净:
flutter clean cd android && ./gradlew clean flutter run
内容的提问来源于stack exchange,提问作者Phearum
相关产品推荐
相关产品推荐

