java.lang.SecurityException:无法锁定用户首选项.锁定文件访问被拒绝



运行Intellij Ultimate(版本2019.3.1(时,它会抛出此错误:

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

对此有什么解决方法?

我认为这个用户偏好错误是我每次打开时都必须设置和激活 IntelliJ 的原因。

~/.java/.userPrefs目录、其子目录之一或单个文件具有错误的权限,因此 JVM 无法写入该目录。

如果您从其他用户(例如 root(启动了某些 Java 应用程序,并且该目录是使用该用户的权限创建的,则可能会发生这种情况。

另一个可能的原因是其他一些进程已经持有锁并同时操作Java首选项。

如果是其他进程持有锁,您可以尝试找到并杀死它。

如果是权限问题,最简单的解决方案是sudo rm -rf ~/.java/.userPrefs,然后再次启动 IDE。

当然,您可以检查此位置的实际所有者/权限,并使用chown/chmod(使用-R开关递归(修复它们。

还值得检查.java目录本身的权限,作为最后的手段,您可以将其删除。

最新更新