Я пишу кросс-платформенное приложение, которое создает временные файлы и копирует их в другое место, где их нужно читать каждому. (По умолчанию только владелец имеет доступ для чтения к временным файлам.) Я попытался использовать права доступа к POSIX следующим образом:
FileAttribute<Set<PosixFilePermission>> attrs =
PosixFilePermissions.asFileAttribute(PosixFilePermissions.fromString("rw-r--r--"));
Path temp = Files.createTempFile(null, ".tmp", attrs);
Но это приводит к исключению на платформах, отличных от POSIX:
java.lang.UnsupportedOperationException: 'posix:permissions' not supported as initial attribute
Я хочу добавить простую проверку, чтобы я мог использовать права доступа к файлам там, где это необходимо, без нарушения совместимости с другими платформами.