解決Warning Couldn't flush user prefs: java.util.prefs.BackingStoreException: Couldn't get file lock.


系統:Ubuntu 16.04 LTS

環境:vscode+java extension pack打開了一個gradle的java項目;另外,用一個terminal啟動了groovysh

報錯:

groovysh報錯 java.util.prefs.FileSystemPreferences syncWorld
警告: Couldn't flush user prefs: java.util.prefs.BackingStoreException: Couldn't get file lock.

 

參考資料[1]:https://stackoverflow.com/questions/2027566/java-util-prefs-throwing-backingstoreexception-why

 

解決:

根據[1]中“If two JVMs attempt to lock the file at the same then this is what you'll see.”

打開任務管理器,看到兩個java進程,一個是vscode java extension 運行的 eclipse jdt 所啟動的jvm(jvm1),另一個是groovysh所啟動的jvm(jvm2)

所以,是因為jvm1進程已經獲取lock了,導致jvm2無法獲取lock而報錯

關閉vscode的java項目之后,groovysh不再報錯


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM