System.getenv("TEST_HOME") 返回 null
System.getenv("TEST_HOME") is returning null
我正在 ubuntu 14.0.4 机器上工作。
我使用
在我的 .bashrc
文件中导出了一个变量 TEST_HOME
export TEST_HOME=/home/dev/code/test
当我从终端尝试 echo $TEST_HOME
时,它返回 /home/dev/code/test
到目前为止,还不错。
When I try from Java code :
String value = System.getenv("TEST_HOME");
value
is null.
我是不是漏掉了什么?
在 .bashrc
中提及变量仅适用于从 shell 开始的程序。对于系统范围的环境变量,请在 /etc/environment
.
中提及它
.bashrc
只会为 bash shell 设置环境变量。要在系统范围内设置它,请在 /etc/environment
文件中设置它。
由于您使用的是 eclipse,并且它不在 bash shell 内 运行,因此它没有获取您正在设置的变量。如果你 运行 你的程序在你的终端中使用 java 命令行那么它应该得到它。
在 /etc/environment
中设置变量将使其可用于 eclipse。更新 /etc/environment
.
后,您将需要重新启动计算机
我正在 ubuntu 14.0.4 机器上工作。
我使用
在我的.bashrc
文件中导出了一个变量 TEST_HOME
export TEST_HOME=/home/dev/code/test
当我从终端尝试 echo $TEST_HOME
时,它返回 /home/dev/code/test
到目前为止,还不错。
When I try from Java code :
String value = System.getenv("TEST_HOME");
value
is null.
我是不是漏掉了什么?
在 .bashrc
中提及变量仅适用于从 shell 开始的程序。对于系统范围的环境变量,请在 /etc/environment
.
.bashrc
只会为 bash shell 设置环境变量。要在系统范围内设置它,请在 /etc/environment
文件中设置它。
由于您使用的是 eclipse,并且它不在 bash shell 内 运行,因此它没有获取您正在设置的变量。如果你 运行 你的程序在你的终端中使用 java 命令行那么它应该得到它。
在 /etc/environment
中设置变量将使其可用于 eclipse。更新 /etc/environment
.