Java HSQLDB挂起在Jboss和Maven Surefire中

Java HSQLDB挂起在Jboss和Maven Surefire中,java,hsqldb,Java,Hsqldb,我有一个相当简单的应用程序,用来存储几个键值对。为此,我决定使用HSQLDB,并进行一个非常基本的单元测试,启动数据库,创建一些表,然后退出。这在eclipse中运行良好,但在maven surefire中挂起,stack报告了以下内容。这在每次运行测试时都是一致的 不幸的是,如果我继续在jboss中运行我的应用程序,同样的死锁也会出现,所以问题不在于surefire。我尝试了各种行锁定选项,但没有效果。有没有人看到过这件事,并希望能克服它?我正在java 1.7下运行hsqldb版本2.3.2

我有一个相当简单的应用程序,用来存储几个键值对。为此,我决定使用HSQLDB,并进行一个非常基本的单元测试,启动数据库,创建一些表,然后退出。这在eclipse中运行良好,但在maven surefire中挂起,stack报告了以下内容。这在每次运行测试时都是一致的

不幸的是,如果我继续在jboss中运行我的应用程序,同样的死锁也会出现,所以问题不在于surefire。我尝试了各种行锁定选项,但没有效果。有没有人看到过这件事,并希望能克服它?我正在java 1.7下运行hsqldb版本2.3.2

"HSQLDB Timer @53063e86" daemon prio=10 tid=0x00007f140cfa7800 nid=0x1d77 in Object.wait() [0x00007f13e2da7000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    - waiting on <0x0000000783b0a678> (a org.hsqldb.lib.HsqlTimer$TaskQueue)
    at org.hsqldb.lib.HsqlTimer$TaskQueue.park(Unknown Source)
    - locked <0x0000000783b0a678> (a org.hsqldb.lib.HsqlTimer$TaskQueue)
    at org.hsqldb.lib.HsqlTimer.nextTask(Unknown Source)
    - locked <0x0000000783b0a678> (a org.hsqldb.lib.HsqlTimer$TaskQueue)
    at org.hsqldb.lib.HsqlTimer$TaskRunner.run(Unknown Source)
    at java.lang.Thread.run(Thread.java:722)

您需要报告连接URL以及应用程序在连接后执行的操作。我使用的是file:database,连接后,测试将创建三个表,然后退出一个索引。虚拟机中可能运行两个HSQLDB进程。HSQLDB计时器是一个单线程的单例程序,很可能就是这样——我肯定看到jboss启动了一个,不过如果maven这样做的话会让人惊讶。可能是多线程测试本身。