Java认为我的主文件夹是C盘?

出于某种原因,我必须改变一些configuration或者什么,因为在一个全新的项目中,我正在input:

System.out.println(System.getProperty("user.home"));

并获得以下输出:

C:\

而之前,它用来返回类似于C:\Users\...

有没有我需要清除的configuration文件?

Solutions Collecting From Web of "Java认为我的主文件夹是C盘?"

当你调用“ System.getProperty("user.home"); “在您的代码中,JVM不使用Windows环境变量来确定用户配置文件的位置,而是访问引用用户桌面目录的注册表项。 然后获取桌面的父目录,并假定这是用户的配置文件目录。 所以请检查您的桌面目录在HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\的注册表项,并相应地进行更新。 如果Desktop目录的注册表项的值是“ C:\\ ”,那么JVM在调用“ System.getProperty("user.home");返回值” C:\System.getProperty("user.home"); “在你的代码中。 例如,如果您可以将注册表中的桌面键激活修改为“ C:\Users\YourName\Desktop ”,那么您将在调用“ System.getProperty("user.home");获得” C:\Users\YourNameSystem.getProperty("user.home"); “在你的代码中。

谢谢!