更新Android Studio Flamingo后Flutter旧项目Kotlin Gradle版本报错求助
解决Android Gradle插件与Kotlin版本不兼容问题
问题分析
报错核心是:wakelock模块硬编码使用了Kotlin Gradle插件1.3.50,而Android Gradle插件7.3.0要求版本必须≥1.5.20。即使修改了根目录build.gradle的kotlin_version,第三方依赖模块的独立配置仍会导致版本冲突。
解决方案
1. 强制所有子项目使用统一Kotlin版本
修改根目录build.gradle,在subprojects块中添加配置,强制覆盖所有子项目的Kotlin插件版本:
subprojects { project.buildDir = "${rootProject.buildDir}/${project.name}" project.evaluationDependsOn(':app') // 强制所有使用kotlin-android插件的子项目采用指定版本 plugins.withId('org.jetbrains.kotlin.android') { plugin.version = '1.6.10' } }
2. 清理项目缓存
执行以下命令彻底清理缓存,确保新配置生效:
flutter clean flutter pub get cd android gradlew clean cd ..
3. 更新上游依赖(推荐)
定位并更新引入旧版wakelock的依赖:
- 运行
flutter pub deps查看依赖树,找到wakelock的上游依赖 - 运行
flutter pub outdated检查该依赖的可更新版本 - 修改
pubspec.yaml中对应依赖的版本号,升级到最新稳定版
4. 检查App模块配置
确认android/app/build.gradle中未硬编码Kotlin版本,确保使用根目录定义的变量:
// 正确写法:使用根目录的kotlin_version apply plugin: 'kotlin-android' // 错误写法:避免硬编码版本 // apply plugin: 'kotlin-android', version: '1.3.50'
内容的提问来源于stack exchange,提问作者Alpesh Kukadiya
相关产品推荐
相关产品推荐

