使用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首选项面板中定义)。
但哪一个应该使用,还是没关系使用其中的任何?
Answer 1:
是否雪豹还是/usr/libexec/java_home
? 在10.5,我刚才设置JAVA_HOME
该命令的输出,这应该给您在Java首指定的Java路径。 下面是我的一个片段.bashrc
文件,设置这个变量:
export JAVA_HOME=$(/usr/libexec/java_home)
我没有经历过与该技术的任何问题。
偶尔我也得的值更改JAVA_HOME
到Java的早期版本。 例如,一个程序,我需要保持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
Answer 2:
此外,它`有趣的设置您的路径以反映JDK。 加入后JAVA_HOME(其可以与通过“mipadi”所列举的例子来进行):
export JAVA_HOME=$(/usr/libexec/java_home)
还添加在〜/ .profile文件:
export PATH=${JAVA_HOME}/bin:$PATH
PS:对于OSX,我一般都在HOME目录,而不是使用的.bashrc .profile文件
Answer 3:
我有MAC OS X(内华达)10.12.2。
我设置JAVA_HOME上工作按照下面的步骤做出反应自然 (适用于Android应用)。
打开终端(命令+ R,输入端子,敲击回车键)。
添加以下行到〜/ .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
而已。
Answer 4:
如今的Java似乎被安装在/Library/Java/JavaVirtualMachines
Answer 5:
我在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
Answer 6:
我倾向于使用/Library/Java/Home
。 偏好窗格的工作方式,这应该是最新的与您的首选版本。
Answer 7:
以上工作没有任何更多约塞米蒂各种图形应用! 如Eclipse,或任何开始与聚光灯。 (.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 /埃尔卡皮坦/ MacOS的塞拉利昂的作品?
Answer 8:
我发现这个堆栈的帮助,我也有同样的问题,我可以解决:
我的Java路径在这里:
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
并需要把我的.bash_profile
:
export JAVA_HOME=\"/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home\"
希望帮助
Answer 9:
跳绳终端设置,因为你提到的应用,永久性系统环境变量设置(适用于MacOS的塞拉利昂;应埃尔卡皮坦工作太):
launchctl setenv JAVA_HOME $(/usr/libexec/java_home -v 1.8)
(这将设置JAVA_HOME到最新的1.8的JDK,机会是你已经通过serveral的更新了如javac的1.8.0_101,javac的1.8.0_131)
当然,改变1.8到1.7或1.6(真的吗?),以满足您的需要和您的系统
Answer 10:
至于其他的答案注意,可以找到Java主目录正确的方法是使用/usr/libexec/java_home
。
造成这种情况的官方文档是在苹果的技术Q&A QA1170:在OS X上重要的Java目录 : https://developer.apple.com/library/mac/qa/qa1170/_index.html
Answer 11:
对我来说行家似乎工作关.mavenrc
文件:
echo "export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)" > ~/.mavenrc
我敢肯定,我把它捡起来上也是如此,只是不记得在哪里。
Answer 12:
创建文件~/.mavenrc
然后粘贴到文件中这个
export JAVA_HOME=$(/usr/libexec/java_home)
测试
mvn -v
Answer 13:
对于鱼shell用户,使用类似以下内容: alias java7 "set -gx JAVA_HOME (/usr/libexec/java_home -v1.7)"
文章来源: What should I set JAVA_HOME to on OSX