更新依赖后Flutter构建失败,google_sign_in等Android包报错
Flutter Android构建失败:google_sign_in/url_launcher无法解析androidJdkImage
原本运行正常的Flutter项目,在安装新依赖后,Android端的google_sign_in和url_launcher包出现构建错误,iOS端无异常。具体错误日志如下:
FAILURE: Build failed with an exception. What went wrong: Execution failed for task ':google_sign_in_android:compileDebugJavaWithJavac'. Could not resolve all files for configuration ':google_sign_in_android:androidJdkImage'. Failed to transform core-for-system-modules.jar to match attributes {artifactType=_internal_android_jdk_image, org.gradle.libraryelements=jar, org.gradle.usage=java-runtime}. > Execution failed for JdkImageTransform: /Users/pezhvak/Library/Android/sdk/platforms/android-34/core-for-system-modules.jar. > Error while executing process /Users/pezhvak/Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/jlink with arguments {--module-path /Users/pezhvak/.gradle/caches/8.8/transforms/4c4ec335038410e4c484aa095ddf9d65-c534e869-7e4e-4da9-a418-dec3e27819d0/transformed/output/temp/jmod --add-modules java.base --output /Users/pezhvak/.gradle/caches/8.8/transforms/4c4ec335038410e4c484aa095ddf9d65-c534e869-7e4e-4da9-a418-dec3e27819d0/transformed/output/jdkImage --disable-plugin system-modules} Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. Get more help at https://help.gradle.org. BUILD FAILED in 2s Error: Gradle task assembleDebug failed with exit code 1
已尝试以下方案但未解决:
- 清理Gradle缓存
- 安装Android 15(API Level 35)
- 卸载并重新安装依赖包
- 降级依赖包版本
- 新建Flutter项目安装目标依赖,仍出现相同错误
解决方案
1. 检查JDK与Gradle兼容性
错误涉及jlink工具,核心原因大概率是JDK版本与Gradle版本不匹配:
- 打开
android/gradle/wrapper/gradle-wrapper.properties查看当前Gradle版本(如Gradle 8.x),Gradle 8.x要求JDK 17及以上版本 - 打开Android Studio → 设置 → Build, Execution, Deployment → Build Tools → Gradle,确认"Gradle JDK"选择的是JDK 17+(推荐使用Android Studio自带的Embedded JDK)
2. 修复Android SDK Platform文件
core-for-system-modules.jar文件损坏可能导致转换失败:
- 打开Android Studio → SDK Manager → 找到Android 34(API Level 34),先卸载再重新安装
- 确保SDK安装目录有正常读写权限,无系统权限限制
3. 强制指定Gradle JDK路径
在项目gradle.properties中添加以下配置,强制Gradle使用Android Studio内嵌JDK:
org.gradle.java.home=/Applications/Android Studio.app/Contents/jbr/Contents/Home
4. 彻底清理缓存
执行以下命令清除Flutter和Gradle的所有缓存:
flutter clean rm -rf ~/.gradle/caches rm -rf android/.gradle rm -rf android/build flutter pub get
5. 降级Gradle版本(备选)
若Gradle 8.8存在兼容性问题,可尝试降级到8.6:
- 修改
gradle-wrapper.properties中的distributionUrl:
distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-all.zip
- 修改
android/build.gradle中的AGP版本为兼容版本:
dependencies { classpath 'com.android.tools.build:gradle:8.2.2' // 其他依赖保持不变 }
内容的提问来源于stack exchange,提问作者Pezhvak
相关产品推荐
相关产品推荐

