Flutter编译报错:Kotlin版本不兼容,修改版本仍无法解决
解决Flutter打包时Kotlin版本不兼容问题
问题根源
项目存在Kotlin版本冲突:某模块(大概率是第三方插件)编译使用了Kotlin 1.9.0元数据,但当前Gradle配置预期的是1.7.1版本,导致assembleDebug任务失败。仅修改根目录android/build.gradle的ext.kotlin_version可能无法覆盖所有依赖的版本配置。
具体解决步骤
统一根目录与模块级的Kotlin版本配置
打开android/build.gradle,确保ext.kotlin_version和Kotlin Gradle插件版本一致,且与依赖兼容(示例用1.9.0):buildscript { ext.kotlin_version = '1.9.0' repositories { google() mavenCentral() } dependencies { classpath "com.android.tools.build:gradle:7.4.2" // Kotlin 1.9.0需Gradle 7.4+版本 classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } }同时检查
android/app/build.gradle中的Kotlin插件引用,确保使用根目录定义的变量,不要硬编码版本号:apply plugin: 'kotlin-android'清理缓存并重新同步
执行以下命令彻底清理缓存,避免旧版本残留:flutter clean rm -rf android/.gradle flutter pub get flutter run强制统一所有模块的Kotlin版本
如果第三方插件硬编码了旧版Kotlin,在android/build.gradle末尾添加强制版本规则,确保所有依赖都使用指定版本:subprojects { project.configurations.all { resolutionStrategy.eachDependency { details -> if (details.requested.group == 'org.jetbrains.kotlin') { details.useVersion '1.9.0' } } } }匹配Gradle与Kotlin版本
打开gradle/wrapper/gradle-wrapper.properties,确保Gradle版本与Kotlin版本兼容(Kotlin 1.9.0对应Gradle 7.4及以上):distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.2-all.zip检查并升级第三方插件
查看pubspec.yaml中的插件列表,升级到支持目标Kotlin版本的最新版;若插件长期未维护,考虑替换为功能类似的活跃插件。
内容的提问来源于stack exchange,提问作者Tanay
相关产品推荐
相关产品推荐

