用ant 启动和关闭 hsql数据库

casilin 2009-12-29 02:19:51
已经有写好的启动hsql数据库的运行文件 server.bat

我用ant写关于java代码的编译、打包测试等任务,在编译某段代码的时候要启动hsql数据库,于是我在该编译的target中写入这么一段:
<exec dir="${code}\db" executable="${code}\db\server.bat"></exec>
但问题是,执行到这里,hsql数据库启动后就不动了,在网上查了一下,有一个parallel,可以让两个任务同时进行,这样就可以把启动hsql的单独出来
于是我又修改为:
<target name="test">
<parallel>
<exec dir="${code}\db" executable="${code}\db\server.bat"></exec>
<javac>
....
</javac>
</parallel>
</target>
后面还有一些target依赖于test这个target
执行后,发现启动hsql数据库和编译的确是同时进行了,但是等编译程序结束后又停在那儿,无法进行下面的target
后来又看到waitfor,但还是跟上面一样,启动完hsql后就不动了
实在是不知道该怎么弄,有没有哪位大侠可以指点一下,还有就是启动hsql后,我想关闭的话,ant该怎么写?谢谢!
...全文
170 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
casilin 2010-01-12
  • 打赏
  • 举报
回复
我照你说的改了之后,的确是重新打开一个窗口运行了,但是还是停在那儿,不继续往下运行,这是为什么呢?不是已经另外启一个窗口了吗?还是应该让新启的窗口打开后返回一个值?
casilin 2010-01-11
  • 打赏
  • 举报
回复
谢谢iisbsd,我明白了,但是server.bat里面写的东西我不是太懂,如果要加入start 该怎么写呢?或者有谁能帮我分析一下server.bat里面内容的意思?
cd /D D:\\test\\db

java -classpath ..\hsqldb.jar org.hsqldb.Server -database test
iisbsd 2010-01-11
  • 打赏
  • 举报
回复
把java那行变成:

start "" java -classpath ..\hsqldb.jar org.hsqldb.Server -database test
iisbsd 2010-01-07
  • 打赏
  • 举报
回复
可以考虑在server.bat里面用start,就能直接返回了。

你自己在命令行窗口里面试一下执行“ping -t www.csdn.com”和“start ping -t www.csdn.com”的差别。
casilin 2010-01-04
  • 打赏
  • 举报
回复
自己顶一下~~

2,209

社区成员

发帖
与我相关
我的任务
社区描述
其他数据库开发 其他数据库
社区管理员
  • 其他数据库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧