当前位置:  开发笔记 > 编程语言 > 正文

我应该在OSX上设置JAVA_HOME

如何解决《我应该在OSX上设置JAVA_HOME》经验,为你挑选了7个好方法。

许多使用shell脚本配置其环境的Java应用程序使用JAVA_HOME环境变量来启动正确版本的Java,找到JRE JAR等.

在OSX 10.6上,以下路径似乎对此变量有效

/Library/Java/Home
/System/Library/Frameworks/JavaVM.framework/Home
/System/Library/Frameworks/JavaVM.framework/Versions/Current

其中一些是实际当前VM的符号链接(如"Java首选项"窗格中所定义).

但应该使用哪一个 - 或者可以使用其中任何一个?



1> mipadi..:

雪豹还有/usr/libexec/java_home吗?在10.5上,我只是设置JAVA_HOME了该命令的输出,它应该为您提供Java首选项中指定的Java路径.这是我.bashrc文件中的一个片段,它设置了这个变量:

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

我没有遇到过这种技术的任何问题.

有时我必须将JAVA_HOMEJava 的值更改为早期版本.例如,我正在维护的一个程序在OS X上需要32位Java 5,因此在使用该程序时,我JAVA_HOME通过运行来设置:

export JAVA_HOME=$(/usr/libexec/java_home -v 1.5)

对于那些没有java_home在你的道路上的人,这样添加它.

sudo ln -s /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java_home /usr/libexec/java_home


仍然适用于小牛队
仍然适用于约塞米蒂.;)
El capitan.校验!
Mountain Lion也有它
高塞拉10.13.1检查!!
仍然适用于莫哈韦
Snow Leopard还有/ usr/libexec/java_home.谢谢
适用于Sierra 10.12.3
设置路径时出错:`ln:/ usr/libexec/java_home:不允许操作.有谁知道可能是什么问题?
适用于High Sierra 10.13.4

2> lucasarruda..:

另外,设置PATH以反映JDK很有意思.添加JAVA_HOME后(可以使用'mipadi'引用的示例完成):

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

在〜/ .profile中添加:

export PATH=${JAVA_HOME}/bin:$PATH

PS:对于OSX,我通常在HOME目录中使用.profile而不是.bashrc



3> hygull..:

我有MAC OS X(Sierra)10.12.2.

我按照以下步骤将JAVA_HOME设置React Native(适用于Android应用).

打开终端(Command + R,输入Terminal,按ENTER).

将以下行添加到〜/ .bash_profile. export JAVA_HOME=$(/usr/libexec/java_home)

现在运行以下命令. source ~/.bash_profile

您可以通过键入以下命令来检查JAVA_HOME的确切值. echo $JAVA_HOME

返回的值(输出)将如下所示. /Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home

而已.


不需要。在我的情况下,`$ JAVA_HOME`代表`$(/ usr / libexec / java_home)`,`$(/ usr / libexec / java_home)在内部被称为`/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk / Contents / Home`。

4> Nicolas Momm..:

现在Java似乎已经安装了 /Library/Java/JavaVirtualMachines



5> Rae..:

我在Mac OS 10.6.8上

对我来说最简单的解决方案就是放入

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

为了测试它是否有效,请加入

$ echo $JAVA_HOME

表明

/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home

你也可以测试一下

$ which java



6> Clint..:

我倾向于使用/Library/Java/Home.首选项窗格的工作方式应与您的首选版本保持同步.



7> 小智..:

以上内容在YOSEMITE中不再适用于图形应用程序!像eclipse,或者任何以Spotlight开头的东西.(.bash_profile,launchd.conf仅适用于终端会话.)在启动eclipse之前,只需打开一个终端窗口,然后发出以下命令:

launchctl setenv JAVA_HOME /Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents/Home

(使用您的安装路径!也许可以使用$(/ usr/libexec/java_home)而不是完整路径.)

查看关于永久解决方案的完整优秀文章: 通过launchd.conf设置环境变量不再适用于OS X Yosemite/El Capitan/macOS Sierra?

推荐阅读
小妖694_807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有