更新:以下链接没有完整的答案.必须在两个地方设置路径或变量(一个用于GUI,一个用于shell)是蹩脚的.
不重复:在OS X中设置环境变量?
来自Windows背景,可以很容易地设置和修改环境变量(只需转到系统属性>高级>环境变量),在Mac OS 10.5上似乎没那么直接.大多数参考文献都说我应该更新/ etc/profile或〜/ .profile.那些是系统变量和用户变量的等价物吗?例如,我应该在哪里设置我的JAVA_HOME变量?
编辑:
我希望能够从终端以及像Eclipse这样的应用程序访问该变量.此外,我希望我不必重新启动/注销以使此生效.
我试图System.getenv()获取通过终端(Mac)设置的环境变量的值,我还在我的.bash_profile文件中设置变量并重新加载.在这样做之后,我回显了值并且正确的值被打印到终端.尝试检索变量的值时(我确保在我的.bash_profile文件和使用时都使用了正确的名称System.getenv().
在下面的代码中,我用VAR_NAME替换了变量的名称:
String varValue = System.getenv("VAR_NAME");
System.out.println("Value: " + varValue);
Run Code Online (Sandbox Code Playgroud)
在我的.bash_profile中:
export VAR_NAME="foo"
Run Code Online (Sandbox Code Playgroud)
当我打印出值时,会打印"null" varValue.
可能是什么原因造成的?
编辑:我在这里按照最新的答案,重新启动Eclipse,它工作正常!