【发布时间】:2013-03-05 17:07:37
【问题描述】:
根据Setting environment variables in OS X?等这里的帖子,对于Mountain Lion,如果不是早期版本的OS X,在系统级别设置环境变量的唯一方法是使用(或创建) 文件 /etc/launchd.conf 包含以下命令:
setenv CATALINA_BASE /opt/local/share/java/tomcat6
(这似乎确实按预期工作。)
如果是这样,如何通过引用其他东西的值来做到这一点,例如,设置 JAVA_HOME?在 /etc/launchd.conf 我试过了
setenv JAVA_HOME $(/usr/libexec/java_home)
但如果我运行则在终端中
echo $JAVA_HOME
我只是按字面意思返回 $(/usr/libexec/java_home)。
相比之下,如果我将相同的 setenv JAVA_HOME $(/usr/libexec/java_home) 命令放入我的 ~/.profile 中,那么 echo $JAVA_HOME 的结果就是引用的实际值,即 /Library/Java/ JavaVirtualMachines/jdk1.7.0_15.jdk/Contents/Home.
那么我应该如何修改 /etc/launchd.conf 中的 setenv 命令,使其给出第二个参数的 value 而不是字面的第二个参数?
【问题讨论】:
标签: environment-variables osx-mountain-lion