Flutter - 错误:JAVA_HOME 在 macos 中设置为无效目录

问题描述 投票:0回答:1

我正在使用 android studio 开发 android 原生和 flutter 项目。我的android本机项目jdk设置为

/Applications/AndroidStudio.app/Contents/jbr/Contents/Home
并且我已经下载了jdk17.0.12并将其安装在我的机器中。我还安装了 jdk23 并删除了它,因为我想继续使用 jdk17。我已经使用
nano ~/.zshrc
配置了 JAVA_HOME 并添加了路径。这是我的全部清单。

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home
export ANDROID_HOME=/Users/$USER/Library/Android/sdk
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
export PATH=/opt/homebrew/bin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr$

当我尝试运行我的 flutter 应用程序时,出现以下错误。

ERROR: JAVA_HOME is set to an invalid directory: /Users/srvenk/Library/Java/JavaVirtualMachines/openjdk-23/Contents/Home

Please set the JAVA_HOME variable in your environment to match the
location of your Java installation.

Error: Gradle task assembleDebug failed with exit code 1

我尝试运行

flutter doctor
,但出现了一个与 JAVA_HOME 相关的错误。

Cannot execute /Users/srvenk/Library/Java/JavaVirtualMachines/openjdk-23/Contents/Home/bin/java to determine the version 
我已经从我的机器中删除了 jdk23 并将 JAVA_HOME 变量设置为
/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home
。但我仍然遇到同样的问题。我尝试使 android studio 中的缓存无效并多次重新启动我的机器。但仍然没有运气。有人可以帮我解决这个问题吗?

android flutter macos java-home
1个回答
0
投票

嘿,如果你在 zsh shell 中执行

echo $JAVA_HOME
会发生什么,

在 android studio 中,您可以转到“首选项”>“构建、执行、部署”>“构建工具”>“Gradle”,应该有一个 Gradle JDK 选项,尝试将其更改为 JDK 17。

请确保 zsh 是您的默认 shell。

如果上述方法不起作用,希望本指南可以帮助您,https://www.devgem.io/posts/resolving-flutter-s-java-home-error-on-macos-step-by-step-guide

© www.soinside.com 2019 - 2024. All rights reserved.