Java是macOS最新版本的可选包。
然而,一旦安装,JAVA_HOME环境变量似乎没有正确设置。
Java是macOS最新版本的可选包。
然而,一旦安装,JAVA_HOME环境变量似乎没有正确设置。
当前回答
针对Java 9的更新和一些简洁的别名。
. bash_profile:
export JAVA_HOME8=`/usr/libexec/java_home --version 1.8`
export JAVA_HOME9=`/usr/libexec/java_home --version 9`
注意,对于最新版本,它是9而不是1.9。
设置活动Java:
export JAVA_HOME=$JAVA_HOME8
export PATH=$JAVA_HOME/bin:$PATH
一些用于在不同版本之间切换的额外别名:
alias j8='export JAVA_HOME=$JAVA_HOME8; export PATH=$JAVA_HOME/bin:$PATH'
alias j9='export JAVA_HOME=$JAVA_HOME9; export PATH=$JAVA_HOME/bin:$PATH'
终端测试:
% j8
% java -version
java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)
% j9
% java -version
java version "9"
Java(TM) SE Runtime Environment (build 9+181)
Java HotSpot(TM) 64-Bit Server VM (build 9+181, mixed mode)
编辑:针对Java 10的更新
export JAVA_HOME10=`/usr/libexec/java_home --version 10`
alias j10='export JAVA_HOME=$JAVA_HOME10; export PATH=$JAVA_HOME/bin:$PATH'
编辑:针对Java 11的更新
export JAVA_HOME11=`/usr/libexec/java_home --version 11`
alias j11='export JAVA_HOME=$JAVA_HOME11; export PATH=$JAVA_HOME/bin:$PATH'
其他回答
这个答案与山狮有关,与狮子无关。我需要为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命令行工具中工作得很好,正如它们的文档中给出的那样。
对于Java 11 (JDK 11),可以使用以下命令找到它:
/usr/libexec/java_home -v 11
更新的Oracle jvm(如1.7.0_21-b12)似乎安装在这里:
/Library/Internet\ 插件/JavaAppletPlugin.plugin/Content/Home
我必须在我的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)
一个更好的(更可升级的)方法是使用以下方法:
/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home
这应该与AWS一起工作,因为它在Home下面有bin