我在Linux机器上运行Java Spark服务器,并且我试图存储用户首选项,并且我遇到两个主要问题:
虽然我可以在运行时获取/设置首选项,但每次我终止程序并再次运行时,首选项都会被删除。
有时我会收到此错误(可能与同时请求不同网页的用户有关):
线程中的异常" Timer-0" java.lang.SecurityException:无法锁定用户首选项。锁定文件访问被拒绝。
我的代码如下所示:
...
prefs = Preferences.userRoot().node(PREFS_NAME);
...
get("/sample/reset", (req, res) -> {
prefs.put("bgimg", "test");
...
});
get("/sample/", (req, res) -> {
String bgImgPath = prefs.get("bgimg",BACKGROUND_IMAGE_PATH);
...
});
答案 0 :(得分:1)
我通过以下方法解决了这个问题:
sudo chmod -R 775 ~/.java/
sudo chown -R username:root ~/.java/
仅执行第一个命令还不够。
答案 1 :(得分:-1)
尝试在终端中运行sudo chmod 777 ~/.java/