答案1
在 shell 中运行“导出”命令只会在会话期间保留它。
将导出命令保存在~/.bashrc
(如果您的 shell 是 bash)。这样,每次启动新的 shell 会话时都会执行它。
答案2
正如其他人提到的,export
仅适用于当前 shell 以及使用它后从其启动的程序。 (请注意,它将open
其命令转发给 Finder,因此以这种方式启动的程序不会从其运行的 shell 获取环境变量。)
持久设置环境变量的一种方法是添加到~/.bash_profile
or ~/.bashrc
(前者是首选,否则export
如果您出于某种原因更改它,子 shell 将覆盖它,例如因为某些特定的 Java 程序需要不同的 JRE)。另一种方法是将它们设置为~/.MacOSX/environment.plist
;这是设置环境变量以便 Finder 能够看到它们的唯一方法。
我更喜欢使用环境变量首选项窗格管理~/.MacOSX/environment.plist
。您还可以手动编辑它(注意;它是 XML)。更改后,您必须注销或重新启动才能让 Finder 重新读取它。
答案3
有关如何在 Mac OSX 中设置 JAVA_HOME 的更多信息,有一篇现有的文章 https://stackoverflow.com/questions/603785/environment-variables-in-mac-os-x