Why is the user.dir system property working in Java?

前端 未结 3 1969
渐次进展
渐次进展 2020-12-16 05:55

Almost every article I read told me that you can\'t have chdir in Java. The accepted answer to this question says you can\'t do it in Java.

However, here\'s s

3条回答
  •  南方客
    南方客 (楼主)
    2020-12-16 06:18

    File.getAbsoluteFile() is just looking at the user.dir system property, which is a copy of the process's working directory at VM startup.

    A better test might be to check that the process's working directory is actually changing. How you can do this varies by platform, but on Linux you can to something like:

    $  ls -l /proc/18037/cwd
    lrwxrwxrwx 1 laurence laurence 0 2009-08-05 11:16 /proc/18037/cwd -> /home/laurence/
    

    where "18037" is the pid of the process in question. If you do this I believe you'll find that the process's working directory doesn't actually change when you update user.dir.

提交回复
热议问题