Я пытаюсь создать экземпляр класса Path в определенной папке с помощью переменной среды. Вот мой код:
Path pathName = Paths.get(System.getenv("USER") + "/AGENDA");
System.out.println(chemin);
if(Files.exists(pathName)) {
System.out.println("Directory already exists!");
}
else
{
try {
Files.createDirectories(pathName);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("Directory newly created!");
}
Когда я запускаю, консоль показывает:
/feujio/AGENDA
java.nio.file.AccessDeniedException: /feujio
at sun.nio.fs.UnixException.translateToIOException(UnixException.java:84)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
at sun.nio.fs.UnixFileSystemProvider.createDirectory(UnixFileSystemProvider.java:384)
at java.nio.file.Files.createDirectory(Files.java:674)
at java.nio.file.Files.createAndCheckIsDirectory(Files.java:781)
at java.nio.file.Files.createDirectories(Files.java:767)
at File.FilePaths.createPath(FilePaths.java:44)
at File.FilePaths.main(FilePaths.java:63)
Directory newly created!
Когда я не использую переменную окружения, она работает. Я не могу объяснить это поведение.