【发布时间】:2012-12-06 16:43:07
【问题描述】:
我注意到我的一些环境变量没有被 JVM 拾取。
在我的.bash_profile 中,我定义了以下内容:
IO_HOME='some_value'
export IO_HOME
在 shell 中做:
echo $IO_HOME
我得到了正确的结果。
但是System.getProperties() 和System.getenv() 都没有显示这个变量被设置。我尝试了 Java 6 和 Java 7。
我有什么遗漏吗?
【问题讨论】:
-
@MaLLinok 你是从 bash shell 启动你的 java 应用程序吗?
-
要测试是Bash问题还是Java问题,可以先运行
env | grep ^IO_HOME=查看env是否看到了这个变量(如果看到了,那么这是Java问题,不是Bash 问题),然后运行 env IO_HOME='some_value' java your_java_program以查看您的 Java 程序是否看到此变量(如果看到,则这是 Bash 问题,而不是 Java 问题)。如果这些给出了相互矛盾的结果,那么问题可能介于两者之间:它可能与您运行 Java 程序的方式有关。
标签: java variables system environment