我想知道是否有可能让Ant启动后台服务器守护程序,以便我可以针对需要对服务器进行通信的客户端编写测试。我尝试过像这样创建一个java任务:
<java classpath="${jar.dir}/foo.jar" classname="foo.Server" fork="true" failonerror="true">
<arg value="7777"/>
</java>
正确地旋转服务器,但无限期地阻塞。如果我添加spawn="true"
,我会得到:
spawn does not allow attributes related to input, output, error, result
spawn also does not allow timeout
finally, spawn is not compatible with a nested I/O <redirector>
我认为这是由参数引起的,但它是服务器所需要的,我不知道如何绕过它。
以下是我当前的junit目标:
<target name="junit" depends="build-jar">
<mkdir dir="${report.dir}"/>
<junit printsummary="yes">
<classpath>
<path refid="junitcp"/>
</classpath>
<formatter type="brief"/>
<batchtest fork="yes" todir="${report.dir}">
<fileset dir="${homeDir}" includes="foo/*Test.java"/>
</batchtest>
</junit>
</target>
答案 0 :(得分:1)
删除failonerror
属性允许您创建衍生的java进程。