Flutter升级后构建APK出现Kotlin版本不兼容错误求助
解决Flutter 3.10.1构建APK时Kotlin版本不兼容问题
核心排查与修复步骤
Flutter 3.10.1对Kotlin版本有最低要求(官方推荐1.8.0+),这类版本不兼容问题大多是依赖库自带的Kotlin配置覆盖了项目全局设置,或是部分模块未同步更新。以下是具体解决方法:
1. 强制统一所有模块的Kotlin版本
第三方依赖常自带独立的Kotlin版本配置,需在项目根目录的build.gradle中添加全局强制配置,确保所有模块对齐:
subprojects { afterEvaluate { project -> if (project.hasProperty('android')) { android { compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } kotlinOptions { jvmTarget = '1.8' apiVersion = '1.8' languageVersion = '1.8' } } } } }
同时确保根目录build.gradle的全局Kotlin和Gradle版本匹配:
buildscript { ext.kotlin_version = '1.8.0' repositories { google() mavenCentral() } dependencies { classpath "com.android.tools.build:gradle:7.4.2" // 与Kotlin 1.8.0兼容的Gradle版本 classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } }
2. 排查并更新问题插件
部分Flutter插件可能内置旧版Kotlin依赖,执行命令查看所有依赖的Kotlin版本:
flutter pub deps --tree | grep kotlin
找到使用1.7.x及以下版本的插件,优先升级到最新版;若插件未更新,可在pubspec.yaml中添加依赖覆盖:
dependency_overrides: # 替换为具体插件的Kotlin相关依赖,示例: kotlin-stdlib: 1.8.0
3. 清理缓存后重新构建
旧Gradle缓存可能导致版本配置不生效,执行以下命令清理后重试:
flutter clean rm -rf ~/.gradle/caches # Linux/macOS # Windows系统执行:rmdir /s /q %USERPROFILE%\.gradle\caches flutter pub get flutter build apk --release
4. 验证本地开发环境一致性
检查flutter doctor输出,确保:
- Android SDK版本达到33+(Flutter 3.10.1的最低要求)
- Android Studio的Kotlin插件已更新至1.8.0+(在Plugins面板中检查更新)
注意事项
- 不要盲目升级Gradle版本至过高版本,Flutter 3.10.1推荐搭配Gradle 7.4.2 + Kotlin 1.8.0的组合
- 部分小众或未维护的插件可能存在版本滞后问题,需考虑替换为功能相近的维护中插件
内容的提问来源于stack exchange,提问作者Asim
相关产品推荐
相关产品推荐

