Flutter Doctor检测Android工具链时Java路径错误,如何修正?
解决Flutter Doctor中Android工具链使用错误Java路径的问题
问题现象
运行flutter doctor时,Android工具链尝试访问不存在的Java路径:
C:\Users\lenovo>flutter doctor Doctor summary (to see all details, run flutter doctor -v): [√] Flutter (Channel stable, 3.24.3, on Microsoft Windows [Version 10.0.22631.4317], locale en-US) [√] Windows Version (Installed version of Windows is version 10 or higher) [!] Android toolchain - develop for Android devices (Android SDK version 34.0.0) X Cannot execute C:\Program Files (x86)\Common Files\Oracle\Java\java8path\java.exe\bin\java to determine the version (C:\Program Files (x86)\Common Files\Oracle\Java\java8path\java.exe\bin\java) this path doesn't contain java.
已验证系统环境变量配置正确:
C:\Users\lenovo>java -version java version "11.0.25" 2024-10-15 LTS Java(TM) SE Runtime Environment 18.9 (build 11.0.25+9-LTS-256) Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.25+9-LTS-256, mixed mode)
C:\Users\lenovo>echo %JAVA_HOME% C:\Program Files\Java\jdk-11
解决方案
1. 修正Android Studio的JDK配置
- 打开Android Studio,依次点击
File > Project Structure > SDK Location - 在
JDK Location处选择正确路径C:\Program Files\Java\jdk-11,点击Apply保存设置。
2. 调整系统环境变量优先级
- 打开系统环境变量设置,检查
Path中%JAVA_HOME%\bin的位置,将其移到所有Java相关路径的最前方,避免错误路径被优先读取。 - 若未添加该路径,手动将
%JAVA_HOME%\bin加入系统Path。
3. 修改Android SDK的studio.jdk文件
- 找到Android SDK安装目录(默认路径为
C:\Users\lenovo\AppData\Local\Android\Sdk) - 进入
cmdline-tools\latest\bin目录(使用其他版本cmdline-tools则对应进入对应版本的bin目录) - 创建或编辑
studio.jdk文件,直接写入正确的JDK路径:C:\Program Files\Java\jdk-11 - 保存文件后关闭所有命令行窗口,重新打开后运行
flutter doctor。
4. 清理Flutter缓存并重新检查
- 执行以下命令:
flutter clean flutter doctor -v
查看输出中Android工具链的Java路径是否已更新为正确值。
内容的提问来源于stack exchange,提问作者lojy dohan
相关产品推荐
相关产品推荐

