Flutter执行flutter doctor --android-licenses时JAVA_HOME路径错误求助
解决Flutter中JAVA_HOME设置无效(显示为-h)的问题
从错误日志和flutter doctor输出可见,系统识别到的JAVA_HOME是无效值-h,导致Android SDK工具无法正常运行,进而无法执行flutter doctor --android-licenses命令。
步骤1:修正系统环境变量中的JAVA_HOME
- 右键点击「此电脑」→「属性」→「高级系统设置」→「环境变量」
- 在「系统变量」区域,处理
JAVA_HOME变量:- 若已存在,点击「编辑」,将变量值改为正确的Java安装路径,例如:
- Android Studio自带JBR:
C:\Program Files\Android\Android Studio\jbr - 独立JDK:
C:\Program Files\Java\jdk-23
- Android Studio自带JBR:
- 若不存在,点击「新建」,变量名填
JAVA_HOME,变量值填上述正确路径
- 若已存在,点击「编辑」,将变量值改为正确的Java安装路径,例如:
- 注意:路径不要加引号,不要在末尾加斜杠,确保路径对应的文件夹真实存在
步骤2:验证JAVA_HOME设置是否生效
- 关闭所有已打开的PowerShell或CMD窗口,重新打开新窗口
- 在PowerShell中执行以下命令,确认输出正常:
echo $env:JAVA_HOME java -version - 需确保输出的路径是你设置的正确路径,且
java -version能正常显示Java版本信息
步骤3:重新运行Flutter命令
- 执行
flutter doctor,检查「Android toolchain」部分的Java条目是否恢复正常 - 再执行
flutter doctor --android-licenses,按提示完成许可证同意操作
额外排查点
- 检查「用户变量」和「系统变量」中是否都设置了
JAVA_HOME,建议只保留「系统变量」中的设置,避免冲突 - 若使用Android Studio自带JBR,可通过「File」→「Project Structure」→「SDK Location」查看准确的JDK路径,确保与环境变量设置一致
内容的提问来源于stack exchange,提问作者tsh
相关产品推荐
相关产品推荐

