【Java】获取环境变量
·
问题背景
终端里 echo $ 可以在配置文件中配置的环境变量,但是到了代码里返回的我设置的环境变量为空:
// 获取属性
Properties properties = System.getProperties();
// 打印
for (Map.Entry<Object, Object> entry : properties.entrySet()) {
if (entry.getKey().equals(URL) || entry.getKey().equals(USERNAME) || entry.getKey().equals(PASSWORD)) {
System.out.println(entry.getKey() + " = " + entry.getValue());
}
}
解决方法
首先我设置了环境变量后,没有重启IDEA,应该是IDEA没有source环境变量,所以需要重启。
另一方面,上面的代码是获取Java相关属性,和系统的环境变量无关,所以找不到我设置的环境变量。应该使用下面代码:
// 获取所有环境变量
Map<String, String> env = System.getenv();
// 打印
for (Map.Entry<String, String> entry : env.entrySet()) {
System.out.println(entry.getKey() + " = " + entry.getValue());
}
更多推荐
所有评论(0)