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

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


当前回答

上面的答案对我没有帮助。我想所有的答案都适用于更老的OS X

对于OS X Yosemite 10.10,请按照以下步骤操作

使用您喜欢的文本编辑器打开~/.bash_profile

//This command will open the file using vim
$ vim ~/.bash_profile

在文件中添加以下行并保存(:后面加“x”表示vim):

export JAVA_HOME=$(/usr/libexec/java_home)

然后在终端输入以下两个命令查看输出:

$ source ~/.bash_profile

$ echo $JAVA_HOME

在第二行中,您正在更新.bash_profile文件的内容。

其他回答

方便的命令,知道java的家和其他细节。

java -XshowSettings:properties -version

为了了解mac上的所有Java home:

/usr/libexec/java_home -V

这个答案与山狮有关,与狮子无关。我需要为AWS命令行工具这样做。根据AWS文档,运行哪个java会返回/usr/bin/java.

因此,我在。bashrc中设置了JAVA_HOME=/usr。

显然,/usr/bin/java是一个指向/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java的符号链接。

更新

正如下面的评论中提到的,当JAVA_HOME环境变量被AWS命令行工具以外的东西使用时,这个JAVA_HOME值并不是理想的解决方案。不过,它在AWS命令行工具中工作得很好,正如它们的文档中给出的那样。

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

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

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

OSX Yosemite, ZSH和Java SE运行时环境8,我不得不:

$ sudo ln -s /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands /System/Library/Frameworks/JavaVM.framework/Versions/Current/bin

在~/中。将JAVA_HOME更改为 出口JAVA_HOME = " /系统/图书馆/框架/ JavaVM.framework /版本/当前”

我必须在我的Macbook air上明确地将它设置为准确的路径。

步骤是:

尝试回显$JAVA_HOME(如果设置了,它会显示路径),如果没有,尝试使用sudo find /usr/ name *jdk搜索它 使用- sudo nano ~/.bash_profile编辑Bash p 添加JAVA Home的确切路径(使用上面第2步中的路径) 出口JAVA_HOME = /图书馆/ Java / Home / JavaVirtualMachines / jdk1.8.0_144.jdk /内容 保存并退出 使用- echo $ JAVA_Home检查JAVA_Home

我在Macbook Air上使用JAVA 8运行MACOS MOJAVE - 10.14.2 (18C54)