我在NetBeans上使用Maven将H2 数据库导入我的项目,并使用以下代码进行初始化。一个简单的嵌入式数据库:
//...
Class.forName("org.h2.Driver");
//...
connection = DriverManager.getConnection("jdbc:h2:~/MCUsers");
//...
当我在我的 Windows 机器(我在其中进行编程)上运行代码时,它运行良好,我可以创建表和行。但是当我在我的 Linux 机器上运行相同的 JAR 文件时,我收到以下错误:
错误代码:90020 消息:数据库可能已在使用中:null。可能的解决方案:关闭所有其他连接;使用服务器模式[90020-194] 原因:java.lang.IllegalStateException:文件被锁定:nio:/root/MCUsers.mv.db [1.4.194/7]
- 相同的 JAR 在我的 Windows 机器上运行没有问题。
- 我的 Linux 机器上没有运行其他 Java 程序。
- 我已经尝试重新启动系统 - 没有用。
- 出现此错误后,仅在根目录中创建文件 MCUsers.mv.db 和 MCUsers.trace.db。
- 我的 Linux 机器使用 JRE1.8.0_112 来执行 JAR 文件。
编辑: 添加“FILE_LOCK=NO;” 也没有工作。