在 java 中获取环境变量值

2022-09-01 08:18:44

在Windows机器(Windows 7)中设置了一个环境变量,并尝试从以下java代码中获取该变量的值。但是,它返回空值。

final String value = System.getenv("PE_CONF_PWD");
System.out.println(value);
//print null

现在,如果我执行以下代码,它将引发一个安全异常,这意味着用户没有该变量。

SecurityManager m = new SecurityManager();
m.checkPropertyAccess("PE_CONF_PWD");
// java.security.AccessControlException: access denied ("java.util.PropertyPermission" "PE_CONF_PWD" "read") 

稍后,我在 JRE 安全策略文件中添加了权限并添加了以下条目,但它仍然返回 null 值。

permission java.lang.RuntimePermission "getenv.PE_CONF_PWD";

答案 1

此代码片段不应返回 null 才能解决您的问题...

final String value = System.getenv("PE_CONF_PWD");

答案 2

推荐