【发布时间】:2020-04-11 13:35:34
【问题描述】:
我希望我的应用程序将一些数据(例如配置、缓存、许可证等)写入一个所有用户均可访问的共享位置。
在 Windows 上,我已对 %PROGRAMDATA% 执行此操作。
在 MacOS 上,我的研究建议使用 Library/Application Support 目录。
虽然用户特定的 ~/Library/Application Support 有效,但非用户特定的 /Library/Application Support 似乎不可写访问?
例子:
Files.writeString(Paths.get("/Library/Application Support/myfile.txt"), "hello world")
抛出异常:
java.nio.file.AccessDeniedException: /Library/Application Support/myfile.txt
这种数据有更好的目的地吗?
【问题讨论】:
-
为什么您希望能够在没有管理员级别权限的情况下写入系统级别目录?
-
@dmckee 我希望如果 Windows 有这样的概念,MacOS 很可能也有,而我错过了一些东西。
标签: java macos file file-location