Java是macOS最新版本的可选包。
然而,一旦安装,JAVA_HOME环境变量似乎没有正确设置。
Java是macOS最新版本的可选包。
然而,一旦安装,JAVA_HOME环境变量似乎没有正确设置。
当前回答
在我升级我的Mac OS后,我也遇到了同样的问题,以下是我的工作:
cmd > vi ~ / . bash_profile 为JAVA_HOME添加/更新行: 出口JAVA_HOME = " /图书馆/ Java / JavaVirtualMachines / jdk1.7.0_15.jdk /内容/家” ~ / cmd >来源。Bash_profile或打开一个新终端
我认为jdk版本可能不同,所以只使用你在/Library/Java/JavaVirtualMachines/下的版本
其他回答
对于OS X你可以这样做:
export JAVA_HOME=`/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java_home`
/usr/ libeexec /java_home不是一个目录,而是一个可执行文件。它输出当前配置的JAVA_HOME,并且不实际更改它。这就是Java Preferences应用程序的作用,在我的例子中,它似乎坏了,实际上没有正确地更改JVM。它确实列出了1.7 JVM,但我可以切换/取消切换和拖放我想要的一切,而不实际改变/usr/libexec/java_home的输出。
即使在Lion上从Oracle安装了1.7.0 u6并在首选项中将其设置为默认值后,它仍然返回apple 1.6 java home。唯一对我有效的修复是手动设置JAVA_HOME:
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_06.jdk/Contents/Home/
至少这样,当从命令行运行时,它将使用1.7。/usr/libexec/java_home仍然坚持1.6。
更新:在OSX上从命令行理解Java有更好的解释如何工作。
export JAVA_HOME=`/usr/libexec/java_home -v 1.7`
就是这样做的。注意,将其更新到1.8就可以了。
在Mac OS X Lion上,设置visualgc运行,我使用:
export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home
更新的Oracle jvm(如1.7.0_21-b12)似乎安装在这里:
/Library/Internet\ 插件/JavaAppletPlugin.plugin/Content/Home
适用于macOS Mojave 10.14.1和JAVA 11.0.1 我将配置文件设置为
export JAVA_HOME=$(/usr/libexec/java_home)
在终端输入此键确认:
$JAVA_HOME/bin/java -version
java version "11.0.1" 2018-10-16 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.1+13-LTS)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.1+13-LTS, mixed mode)