Java是macOS最新版本的可选包。

然而,一旦安装,JAVA_HOME环境变量似乎没有正确设置。


当前回答

麦克·约塞米蒂,

JDK 1.7.0_xx正在使用

$ ls -ltar /usr/bin/java
/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java

JAVA_HOME

/Library/Java/JavaVirtualMachines/jdk1.7.0_xx.jdk/Contents/Home

其他回答

一个更好的(更可升级的)方法是使用以下方法:

/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home

这应该与AWS一起工作,因为它在Home下面有bin

安装Java可选包或Oracle JDK后, 在~/中添加下列行之一。Bash_profile文件将相应地设置环境变量。

export JAVA_HOME="$(/usr/libexec/java_home -v 1.6)"
or
export JAVA_HOME="$(/usr/libexec/java_home -v 1.7)"
or
export JAVA_HOME="$(/usr/libexec/java_home -v 1.8)"
or simply
export JAVA_HOME="$(/usr/libexec/java_home)"

注意:如果在mac上使用brew安装openjdk,请执行sudo ln -sfn /usr/local/opt/openjdk/libexec/openjdk.jdk /图书馆/ Java / JavaVirtualMachines / openjdk。JDK为上述工作

更新:根据Jilles van Gurp的响应增加了-v标志。

我的方法是:

. bashrc

export JAVA6_HOME=`/usr/libexec/java_home -v 1.6`
export JAVA7_HOME=`/usr/libexec/java_home -v 1.7`
export JAVA_HOME=$JAVA6_HOME

# -- optional
# export PATH=$JAVA_HOME/bin:$PATH

这使得在J6和J7之间切换非常容易

麦克·约塞米蒂,

JDK 1.7.0_xx正在使用

$ ls -ltar /usr/bin/java
/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java

JAVA_HOME

/Library/Java/JavaVirtualMachines/jdk1.7.0_xx.jdk/Contents/Home

我在High Sierra 10.13.4上使用Fish shell,并通过Brew安装Java。

它不是自动设置的,所以为了在我的系统上正确设置它,我运行:

set -U JAVA_HOME (/usr/libexec/java_home)