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

Flutter添加依赖包后Android运行失败问题求助

Flutter添加依赖后Android编译失败的解决方案

问题描述

无依赖/无包状态下Flutter项目Android端运行正常,但添加任意依赖包后编译报错,核心错误信息如下:

Launching lib\main.dart on moto g34 5G in debug mode...
Warning: SDK processing. This version only understands SDK XML versions up to 3 but an SDK XML file of version 4 was encountered. This can happen if you use versions of Android Studio and the command-line tools that were released at different times.

FAILURE: Build failed with an exception.

* 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\Kannan\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\Kannan\.gradle\caches\transforms-3\4a46fc89ed5f9adfe3afebf74eb8bfeb\transformed\output\temp\jmod --add-modules java.base --output C:\Users\Kannan\.gradle\caches\transforms-3\4a46fc89ed5f9adfe3afebf74eb8bfeb\transformed\output\jdkImage --disable-plugin system-modules}

已尝试flutter clean、flutter upgrade、flutter pub get无效,Windows平台运行正常。

解决方案

  • 统一Android Studio与SDK命令行工具版本
    打开Android Studio,进入Settings > Appearance & Behavior > System Settings > Android SDK > SDK Tools,勾选Android SDK Command-line Tools (latest)并更新,确保命令行工具与Android Studio版本一致,解决SDK XML版本不兼容的警告。

  • 指定Gradle使用Android Studio自带JDK
    打开项目android/gradle.properties文件,添加或修改以下配置:

    org.gradle.java.home=C:\\Program Files\\Android\\Android Studio\\jbr
    

    或通过Android Studio设置:File > Project Structure > SDK Location > JDK Location,选择Android Studio自带的JetBrains Runtime(JBR),避免系统JDK版本不匹配导致的jlink执行错误。

  • 清理Gradle缓存并重建
    手动删除C:\Users\Kannan\.gradle\caches目录,然后依次执行:

    flutter clean
    flutter pub get
    

    完成后重新运行项目。

  • 临时降低Android SDK编译版本
    打开android/app/build.gradle文件,修改compileSdkVersion和targetSdkVersion为33(若当前为34):

    android {
        compileSdkVersion 33
        defaultConfig {
            targetSdkVersion 33
            // 其他默认配置保持不变
        }
    }
    

    同步Gradle后重新编译运行。

  • 验证依赖包兼容性
    确认添加的依赖包支持当前Flutter版本及Android SDK版本,可查看pub.dev上对应依赖的文档说明,排除依赖版本不兼容问题。

内容的提问来源于stack exchange,提问作者Programming _ പൂച്ച

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 14:17:18