更新Android Studio后Flutter项目编译失败,寻求解决办法
解决Android Studio更新后Flutter项目构建失败的问题
核心问题分析
更新Android Studio 2024.2后出现两个关键问题:
- SDK命令行工具与AS版本不匹配,导致XML版本兼容性警告(仅支持v3但遇到v4)
- Gradle与JDK 21不兼容,引发
JdkImageTransform转换失败
具体解决方案
1. 修复SDK命令行工具版本不匹配
- 打开Android Studio,进入SDK Manager(File > Settings > Appearance & Behavior > System Settings > Android SDK)
- 切换到SDK Tools标签,勾选「Show Package Details」
- 找到「Android SDK Command-line Tools」,选择最新版本(与当前AS版本匹配),点击「Apply」完成更新
2. 解决Gradle与JDK兼容性问题
方案A:降级JDK到17(推荐,兼容性更稳定)
- 下载并安装JDK 17(可通过Android Studio的SDK Manager中「Embedded JDK」选项,或手动下载OpenJDK 17)
- 打开项目的Project Structure(File > Project Structure),在「SDK Location」中,将「JDK Location」指定为JDK 17的安装路径
- 或者在项目的
android/gradle.properties文件中添加:org.gradle.java.home=/path/to/your/jdk17
方案B:升级Gradle版本以支持JDK 21
- 打开项目的
android/build.gradle文件,更新Android Gradle插件版本:buildscript { ext.kotlin_version = '1.9.22' // 确保Kotlin版本兼容 repositories { google() mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:8.7.0' // 升级到支持JDK21的版本 classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } - 打开
android/gradle/wrapper/gradle-wrapper.properties,更新Gradle分发版本:distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-all.zip
3. 清理缓存并重新构建
- 执行命令清理Flutter项目缓存:
flutter clean - 删除项目
android目录下的.gradle文件夹 - (可选)删除全局Gradle缓存(macOS):
rm -rf ~/.gradle/caches/ - 重新运行项目:
flutter run
内容的提问来源于stack exchange,提问作者NurLife
相关产品推荐
相关产品推荐

