6

这里

System.getProperty("user.name"); 

返回 windows server 2008 机器的主机名,而不是当前登录的用户名。

下面是我的代码

final String user = System.getProperty("user.name");
logger.info("User Name : " + user);

我想知道 System.getProperty 在 java 和 windows server 2008 中是如何工作的?为什么在这种情况下它返回错误的值?

4

2 回答 2

6

刚刚检查了这个:System.getProperty("user.name");从环境变量返回值USERNAME,所以检查set USERNAMECMD 窗口中的内容

于 2013-08-21T09:49:28.510 回答
0

要显示在 java 中设置的所有属性的列表,请尝试以下代码

   public static void main(String[] args)
   {
        Properties prop = System.getProperties();
        Set<String> a = prop.stringPropertyNames();
        Iterator<String> keys = a.iterator();
        while (keys.hasNext())
        {
            String key = keys.next();
            String value = System.getProperty(key);
            System.out.println(key + "=" + value);
        }
   }
于 2013-08-21T10:27:40.987 回答