在不使用spawn = true的情况下在后台运行Ant目标

时间:2013-03-11 21:24:53

标签: ant fork spawn

我想在后台启动一个服务器,返回并执行其他一些目标,然后在Ant完成执行所有目标时停止服务器。

我已经提出了以下两个解决方案,但它们都阻止Ant执行后续目标。

因为我希望这个过程最终死掉,所以我不想使用spawn =“true”。 还有其他解决方案吗?

<target name="Start_Selenium_Server">
    <java dir="lib" jar="lib/selenium-server-standalone-2.28.0.jar" fork="true">
        <arg line="-singleWindow -userExtensions user-extensions.js"/>
    </java>
</target>   

<target name="Start_Selenium_Server">
    <exec dir="lib" executable="java" newenvironment="true" output="./log/StartSeleniumServer.log">
        <arg line="-jar selenium-server-standalone-2.28.0.jar -singleWindow -userExtensions user-extensions.js" />
    </exec>
</target>   

1 个答案:

答案 0 :(得分:4)

使用并行任务和守护进程嵌套元素

包裹调用
<target name="Start_Selenium_Server">
    <parallel> 
        <daemons>
            <java dir="lib" jar="lib/selenium-server-standalone-2.28.0.jar" fork="true">
               <arg line="-singleWindow -userExtensions user-extensions.js"/>
            </java>
        </daemons>
 <parallel> 
</target>