Java首选项:无法锁定用户首选项。锁定文件访问被拒绝

问题描述 投票:1回答:2

我在Linux机器上运行Java Spark服务器,我正在尝试存储用户首选项,我遇到两个主要问题:

  1. 虽然我可以在运行时获取/设置首选项,但每次我杀死程序并再次运行时,首选项都会被删除。
  2. 有时我收到此错误(可能与同时请求不同页面的用户有关): 线程“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);
    ...
});
java linux apache-spark preferences securityexception
2个回答
1
投票

我用以下方法解决了这个问题:

sudo chmod -R 775 ~/.java/
sudo chown -R username:root ~/.java/

只做第一个命令是不够的。


-1
投票

尝试在终端中运行sudo chmod 777 ~/.java/

© www.soinside.com 2019 - 2024. All rights reserved.