我正在 macOS 上开发 Flutter 项目,当我尝试在 Android 模拟器上运行该应用程序时,出现以下错误:
ERROR: JAVA_HOME is set to an invalid directory:
“/Library/Java/JavaVirtualMachines/openlogic-openjdk-
17.jdk/Contents/Home“
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation.
但是,当我从终端检查 JAVA_HOME 时,它指向正确的路径:
/Users/rashmi/Library/Java/JavaVirtualMachines/openjdk-17.0.1/Contents/Home
如何解决此问题以便 Flutter 使用正确的 JAVA_HOME?
其他信息
当我在终端中运行
/usr/libexec/java_home -v
时,它会给出以下输出:
Matching Java Virtual Machines (2):
17.0.1 (arm64) "Oracle Corporation" - "OpenJDK 17.0.1"
/Users/rashmi/Library/Java/JavaVirtualMachines/openjdk-
17.0.1/Contents/Home
1.8.321.07 (x86_64) "Oracle Corporation" - "Java"
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
/Users/rashmi/Library/Java/JavaVirtualMachines/openjdk-
17.0.1/Contents/Home
最后我自己找到了解决方案,这是我解决的方法:
打开终端并导航到您的主目录(
cd ~
)。
在终端中运行
open .config
,然后配置目录将打开。
转到 .config 目录中的 flutter -> settings。
在设置文件中,会有一个如下所示的字段 :
{
"jdk-dir": "/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home"
}
将此路径替换为您正确的 JDK 路径。
保存设置文件并关闭它。
现在,再次运行您的 Flutter 项目