You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter添加依赖后Android编译报错求助:JdkImageTransform执行失败

解决Flutter依赖编译时Android JdkImageTransform报错问题

问题情况

给Flutter项目添加shared_preferences_android、alarm_manager_plus这类依赖后,Android端编译持续失败,核心报错为:shared_preferences_android:compileDebugJavaWithJavac任务执行失败,无法解析androidJdkImage配置文件,处理core-for-system-modules.jar时JdkImageTransform执行出错,调用jlink.exe失败。已尝试切换Android SDK到API 35、设置Language Level为23,问题仍未解决。

报错详情

* What went wrong:
Execution failed for task ':shared_preferences_android:compileDebugJavaWithJavac'.
> Could not resolve all files for configuration ':shared_preferences_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: C:\Users\Victus\AppData\Local\Android\sdk\platforms\android-34\core-for-system-modules.jar.
         > Error while executing process C:\Program Files\Android\Android Studio\jbr\bin\jlink.exe with arguments {--module-path C:\Users\Victus\.gradle\caches\transforms-3\4a46fc89ed5f9adfe3afebf74eb8bfeb\transformed\output\temp\jmod --add-modules java.base --output C:\Users\Victus\.gradle\caches\transforms-3\4a46fc89ed5f9adfe3afebf74eb8bfeb\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 7s

当前配置文件

项目根目录build.gradle

allprojects {
    repositories {
        google()
        mavenCentral()
    }
}

rootProject.buildDir = "../build"
subprojects {
    project.buildDir = "${rootProject.buildDir}/${project.name}"
}
subprojects {
    project.evaluationDependsOn(":app")
}

tasks.register("clean", Delete) {
    delete rootProject.buildDir
}

gradle-wrapper.properties

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.3-all.zip

解决办法

  • 清理Gradle缓存:删除C:\Users\Victus\.gradle\caches目录下所有内容,依次执行flutter clean、flutter pub get后重新编译。
  • 匹配Gradle与JDK版本:Gradle 8.3要求JDK 17及以上版本,检查Android Studio的JBR版本是否为17,若不是,通过File > Project Structure > SDK Location > JDK Location切换到JDK 17。
  • 明确Android编译配置:在app模块的build.gradle中指定编译版本,同时对齐Java版本:
    android {
        compileSdkVersion 35
        targetSdkVersion 35
    
        compileOptions {
            sourceCompatibility JavaVersion.VERSION_17
            targetCompatibility JavaVersion.VERSION_17
        }
    }
    
  • 修复Android SDK文件:删除Android SDK中android-34目录,通过SDK Manager重新下载完整的android-34 SDK包,避免文件损坏。
  • 降级Gradle版本:若上述方法无效,修改gradle-wrapper.properties中的distributionUrl为https\://services.gradle.org/distributions/gradle-7.6-all.zip,使用兼容的低版本Gradle重试。

内容的提问来源于stack exchange,提问作者Ahmed abrar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 10:05:15