java中的用户环境变量

use*_*203 3 java variables environment-variables

我试图在java中获取用户环境变量.

System.getEnv()方法仅返回系统环境变量.

有人知道如何获取用户环境变量吗?

See*_*ose 7

运行流程时,只有一个环境.用户变量合并到系统变量中,并覆盖现有变量.然后通过该System.getenv()方法检索该完整环境.

所以你实际上看到了用户的环境变量.

我刚用这四种情况对它进行了测试:

1)没有名为的变量MYVAR:

运行System.out.println(System.getenv("MYVAR"))打印输出null.

2)MYVAR使用值调用的系统变量System:

运行System.out.println(System.getenv("MYVAR"))打印输出System.

3)MYVAR用值调用的用户变量User:

运行System.out.println(System.getenv("MYVAR"))打印输出User.

4)调用系统变量MYVAR具有值System和用户变量称为MYVAR与值User:

运行System.out.println(System.getenv("MYVAR"))打印输出User.


也许你是从IDE(如Eclipse)中尝试过的?更改环境变量时,遗憾的是必须重新启动Eclipse,因为它们未正确传播到运行配置.


Ell*_*sch 1

System.getenv(String)是正确的方法;只有“环境变量” - Windows 将“系统”环境变量应用于每个人的帐户,但它们在应用程序级别上是不可区分的。您可以通过打开cmd提示并执行set(不带参数)来进行验证。