一尘不染

我应该在OSX上将JAVA_HOME设置为什么

java

许多使用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 Preference窗格中定义)。

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


阅读 502

收藏
2020-03-10

共1个答案

一尘不染

我只是设置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
2020-03-10