在mac上构建openjdk“JAVA_HOME未正确定义”

Bol*_*-CS 9 java openjdk jvm

我正在 MAC 上构建 openjdk 并面临这样的问题:

Error: JAVA_HOME is not defined correctly.
We cannot execute /NO_BOOTDIR/bin/java
Run Code Online (Sandbox Code Playgroud)

我的 mac 操作系统是 10.10.2。

openjdk 是

openjdk-7u40-fcs-src-b43-26_aug_2013
Run Code Online (Sandbox Code Playgroud)

ALT_BOOTDIR

export ALT_BOOTDIR=/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home
Run Code Online (Sandbox Code Playgroud)

$JAVA_HOME

echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home
Run Code Online (Sandbox Code Playgroud)

当我设置 JAVA_HOME 并运行“make sanity”时,错误是这样的:

ERROR: Your JAVA_HOME environment variable is set.  This will
   most likely cause the build to fail.  Please unset it
   and start your build again.
Run Code Online (Sandbox Code Playgroud)

所以我必须取消它,无论我是否取消设置,都会出现错误。

有任何想法吗?

认为。

小智 10

在设置路径之前,通过检查目录确保安装了java

/Library/Java/JavaVirtualMachines/<version>.jdk/Contents/Home
Run Code Online (Sandbox Code Playgroud)

然后在.bashrc.bash_profile

JAVA_HOME=/Library/Java/JavaVirtualMachines/<version>.jdk/Contents/Home
export JAVA_HOME
Run Code Online (Sandbox Code Playgroud)

如果缺少 OpenJDK,您可以通过brew安装它

brew tap AdoptOpenJDK/openjdk
brew cask install adoptopenjdk8
Run Code Online (Sandbox Code Playgroud)

应该有符号链接/usr/binjavajavac