ubuntu - java.lang.SecurityException: Could not lock User prefs. Lock file access denied
问题描述
When running Intellij Ultimate (version 2019.3.1) it throws this error:
Internal error. Please refer to http://jb.gg/ide/critical-startup-errors
java.lang.SecurityException: Could not lock User prefs. Lock file access denied.
at java.prefs/java.util.prefs.FileSystemPreferences.checkLockFile0ErrorCode(FileSystemPreferences.java:956)
at java.prefs/java.util.prefs.FileSystemPreferences.lockFile(FileSystemPreferences.java:944)
at java.prefs/java.util.prefs.FileSystemPreferences.sync(FileSystemPreferences.java:748)
at java.prefs/java.util.prefs.FileSystemPreferences.flush(FileSystemPreferences.java:843)
at java.prefs/java.util.prefs.FileSystemPreferences.syncWorld(FileSystemPreferences.java:483)
at java.prefs/java.util.prefs.FileSystemPreferences$3.run(FileSystemPreferences.java:450)
at java.base/java.util.TimerThread.mainLoop(Timer.java:556)
at java.base/java.util.TimerThread.run(Timer.java:506)
-----
JRE 11.0.5+10-b520.17 amd64 by JetBrains s.r.o
What's the fix for this?
This User prefs error I presume is the reason why I have to setup and activate IntelliJ each time it is opened.
解决方案
~/.java/.userPrefs
目录,其子目录之一或单个文件具有错误的权限,因此 JVM 无法在那里写入。
如果您从其他用户(例如 root)启动了某个 Java 应用程序并且该目录是使用该用户的权限创建的,则可能会发生这种情况。
另一个可能的原因是其他一些进程已经持有锁并同时操作 Java 首选项。
如果是其他进程持有锁,你可以尝试找到并杀死它。
如果是权限问题,最简单的解决方案是sudo rm -rf ~/.java/.userPrefs
重新启动 IDE。
您当然可以检查此位置的实际所有者/权限并使用chown
/ (使用开关chmod
递归)修复它们。-R
检查目录本身的权限也是值得的.java
,作为最后的手段,您可以删除它。
推荐阅读
- php - 如何使用关系创建数据?
- r - 向 R 命令添加条件子句,以更改个人所在的组
- javascript - React Native : 有什么方法可以解决每次打字都关闭键盘的问题?
- dax - DAX - 如何编写基本的 RANKX?
- blazor - 如何在 blazor 的 foreach 循环中将数据从一个模型传递到另一个模型?
- python - Python - 执行第一个命令后,tkinter 按钮不执行第二个命令
- asp.net-mvc - 更新用户信息时 viewmodel 为空
- python - 如何用偏移量增加的连续字母替换字符串中的每个字母?
- vue.js - Vue quaser 生产构建“网页正在减慢您的浏览器”
- c# - 如何以给定的叠加顺序绘制图片?(层...)