我想用maven启动和停止hsqldb。 我想在测试阶段之前启动具有特定配置(数据库)的hsqldb服务器,并在之后停止它,并且在应用程序启动之前和之后与其他配置相同。如何使用maven启动/停止hsqldb?
此刻,我开始HSQLDB使用Maven Exec插件,但问题是,在服务器启动挡住了完整的Maven构建过程中(命中CTRL + Ç停止服务器。) 也有没有办法自动停止服务器。
问候
Hemeroc
我想用maven启动和停止hsqldb。 我想在测试阶段之前启动具有特定配置(数据库)的hsqldb服务器,并在之后停止它,并且在应用程序启动之前和之后与其他配置相同。如何使用maven启动/停止hsqldb?
此刻,我开始HSQLDB使用Maven Exec插件,但问题是,在服务器启动挡住了完整的Maven构建过程中(命中CTRL + Ç停止服务器。) 也有没有办法自动停止服务器。
问候
Hemeroc
检查我的HSQLDB Maven插件: https://github.com/avianey/hsqldb-maven-plugin
你可以只启动/停止它像码头,Maven的插件或tomee - Maven的插件:
<plugin>
<!-- current version -->
<groupId>fr.avianey.mojo</groupId>
<artifactId>hsqldb-maven-plugin</artifactId>
<version>1.0.0</version>
<!--
default value for in memory jdbc:hsqldb:hsql://localhost/xdb
override only values you want to change
-->
<configuration>
<driver>org.hsqldb.jdbcDriver</driver>
<path>mem:test</path>
<address>localhost</address>
<name>xdb</name>
<username>sa</username>
<password></password>
<validationQuery>SELECT 1 FROM INFORMATION_SCHEMA.SYSTEM_USERS</validationQuery>
</configuration>
<!-- call start and stop -->
<executions>
<execution>
<id>start-hsqldb</id>
<phase>pre-integration-test</phase>
<goals>
<goal>start</goal>
</goals>
</execution>
<execution>
<id>stop-hsqldb</id>
<phase>post-integration-test</phase>
<goals>
<goal>stop</goal>
</goals>
</execution>
</executions>
</plugin>
它在maven中心有** 0用法**,但集成测试几乎包含在世界上几乎所有的java企业项目中。所以,这个插件绝对不应该使用! (除了一个宠物项目)但不幸的是,正如我们所看到的,即使在宠物项目中也没有人需要它。 – ieXcept
请参阅http://stackoverflow.com/questions/3018066/starting-and-stopping-hsqldb-from-unit-tests –
对不起,但这并不解决任何问题。我不使用休眠,我不想使用源代码启动/停止hsqldb,我想使用Maven来启动/停止它。 – Hemeroc