Jena 为什么是TDB2;“锁已被持有”;jar文件出现问题?
我正在开发一个ApacheJena应用程序。当我从Intellij IDE运行代码时,它工作得很好,但是如果我生成一个jar文件并在终端中运行jar文件,它就不工作了 我得到的错误是:Jena 为什么是TDB2;“锁已被持有”;jar文件出现问题?,jena,tdb,Jena,Tdb,我正在开发一个ApacheJena应用程序。当我从Intellij IDE运行代码时,它工作得很好,但是如果我生成一个jar文件并在终端中运行jar文件,它就不工作了 我得到的错误是: Uncaught exeption ! : org.apache.jena.dboe.base.file.AlreadyLocked: Failed to get a lock: file='/home/iam/OneDrive/Internship/current_data/myTDB/tdb.lock': L
Uncaught exeption ! : org.apache.jena.dboe.base.file.AlreadyLocked: Failed to get a lock: file='/home/iam/OneDrive/Internship/current_data/myTDB/tdb.lock': Lock already held
我正在使用:
- ApacheJena(3.15.0)。(TDB2)
- 梯度6.5
- JVM:11.0.8(Ubuntu 11.0.8+10-post-Ubuntu-0ubuntu120.04)
或者,如果IntelliJ正在进行新流程的分叉,那么您/它不是 完成后显式停止正在运行的进程
/home/iam/OneDrive/interporation/current\u data/myTDB/tdb.lock
-这里也可能发生文件系统问题
对于2,这似乎是您案例中更可能出现的问题,您可以尝试找出锁定的原因,例如,找出锁定它的其他流程,并进行进一步调查。您好,谢谢您的回答。只是想让您知道,在运行JAR文件之前,我试图停止Intellij并重新启动计算机。还要更改JAR文件的数据库位置。尽管如此,我仍然面临着这个问题。@MD.SHAHRIARHASSAN补充了一些想法,尽管最终这将取决于您调查谁/什么人持有该位置的锁,并据此解决问题。阅读您的答案后,我了解了它的主要工作原理。我调试了应用程序,发现有多个线程试图访问同一个数据库。谢谢。一个进程中的多个线程可以,但多个进程不行