avatar

mdo

Hello

  • 首页
  • 知识库
  • 归档
  • 标签
  • 关于
主页 确定 Flutter SDK 及其关联的 Gradle 版本
文章

确定 Flutter SDK 及其关联的 Gradle 版本

发表于 2025-09-14 更新于 2025-09- 14
作者 mdo
3~5 分钟 阅读

最近在编写 Flutter 项目,发现不同的 Flutter SDK 版本有着不一样的 Gradle 版本,然后不同的 Gradle 版本需要不同的 JDK 版本。只有当三者都一致匹配时,才能正常的完成编译

首先,我们可以确定 Flutter SDK 对应的 Gradle 版本。我们每个下载的 Flutter 的 SDK 中都有这样一个示例工程目录,我们打开其中的一个来查看其官方配置的 Gradle 版本,例如:

`flutterexampleshello_worldandroidgradlewrapper` 

我们打开 gradle-wrapper.properties 既可以找到对应的 Gradle 版本,例如我这里 3.7.12 版本的 SDK 对应的是

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

可以发现对应的 Gradle 版本是 7.5,我们可以通过这个表来找到对应的 JDK 版本是 18

| Java version | Support for toolchains | Support for running Gradle | | --- | --- | --- | | 8 | N/A | 2.0 | | 9 | N/A | 4.3 | | 10 | N/A | 4.7 | | 11 | N/A | 5.0 | | 12 | N/A | 5.4 | | 13 | N/A | 6.0 | | 14 | N/A | 6.3 | | 15 | 6.7 | 6.7 | | 16 | 7.0 | 7.0 | | 17 | 7.3 | 7.3 | | 18 | 7.5 | 7.5 | | 19 | 7.6 | 7.6 | | 20 | 8.1 | 8.3 | | 21 | 8.4 | 8.5 |

然后我们需要手动设置 Flutter SDK 编译使用的 JDK 路径:

`flutter config --jdk-dir=D:JDKjdk-18` 

如果你不知道 JDK 的路径可以使用如下指令查询:

`/usr/libexec/java_home -V` 

然后推荐使用 jenv 来管理不同 Shell 的 JDK 版本

我们可以运行如下命令检查:

 `flutter doctor --verbose` 

得到如下的信息:

`[√] Android toolchain - develop for Android devices (Android SDK version 35.0.1)
    • Android SDK at C:UsershucaoAppDataLocalAndroidsdk
    • Platform android-Baklava, build-tools 35.0.1
    • Java binary at: D:JDKjdk-18.0.2binjava
    • Java version OpenJDK Runtime Environment (build 18.0.2+9-61)
    • All Android licenses accepted.` 

说明我们已经修改成功了

知识库
关联
许可协议:  CC BY 4.0
分享

相关文章

10月 7, 2026

比尔盖茨的智慧:想多赚钱,就每天循环做这3件事

我们总有一种非常固执的错觉,认为那些站在财富金字塔顶端的人,必然拥有某种超越常人的特异功能。我们在脑海中给比尔盖茨这样的大佬描绘了一幅极其悲壮的奋斗画像。大家总觉得,他之所以能富可敌国,肯定是因为他每天只睡三个小时,同时对着八个电脑屏幕疯狂敲击键盘,每一秒钟都在做出价值几亿美金的生死抉择。 为了模仿

9月 28, 2026

程序员越想创业,越不要急着动手

一个能源方面的前辈找到我,希望通过我把一些人工的工作 AI 自动化。 能源方面我不懂,找 Gemini 聊完发现这个是可以复制的,非常兴奋。我跟老婆说,这个项目做好以后可以做成平台,推广到其他公司,你就等着做总裁夫人吧! 她听完以后跟我说,这个项目还是太定制化,和我之前做的一个项目很像。 那个项目一

9月 25, 2026

忍了一年多,我终于对i18n下手了过去一年,我主要参与国际机票业务的开发工作,因此每天都要和多语言(i18n)打交道

前言 大家好,我是奈德丽。 过去一年,我主要参与国际机票业务的开发工作,因此每天都要和多语言(i18n)打交道。熟悉我的朋友都知道,我这个人比较“惜力”(并不是,实际上只是忍不下去了),对于重复笨拙的工作非常抵触,于是,我开始思考如何优化团队的多语言管理模式。 痛点背景 先说说我们在机票项目中遇到的

下一篇

如何确定Java版本兼容的gradle版本

上一篇

Flutter 报错: Because every version of flutter_test from sdk depends on xxx, xxx depends on path xxx

最近更新

  • 比尔盖茨的智慧:想多赚钱,就每天循环做这3件事
  • iOS 侧载(Sideloading)工具
  • 程序员越想创业,越不要急着动手
  • 注册 Chat Participant
  • 中秋给在外游子的一封信

热门标签

API CodeGeex Coding Cursor DeepSeek Docker Gitkraken Harness Laravel Management

目录

©2026 mdo. 保留部分权利。