我想同时启动服务器和代理服务器类,使用 Ant 标签,是否可以运行 wo 类?
这是我尝试过的代码,但 Ant 只启动服务器类,之后不做任何事情,不确定 ant 中是否有实现此目的。
感谢您的帮助。
<target name="pxyServer" depends="server">
<echo>Executing Target - Run ProxyServer</echo>
<java classname="pxy.ProxyServer">
<classpath path="staging" />
</java>
</target>
<target name="server">
<echo>Executing Target - RunServer</echo>
<java classname="pxy.Server">
<classpath path="staging" />
</java>
</target>
您的目标是按顺序执行的,由于第一个目标一直运行,第二个目标永远不会有机会启动。
对于并行执行,您可以使用 ant 的"并行"任务:http://ant.apache.org/manual/Tasks/parallel.html
修改后的脚本可能如下所示:
<target name="startServerAndProxy">
<echo>Running server and proxy...</echo>
<parallel>
<java classname="pxy.Server">
<classpath path="staging" />
</java>
<java classname="pxy.ProxyServer">
<classpath path="staging" />
</java>
</parallel>
</target>
(当然,如果您尝试并行启动第三个应用程序,例如客户端,那么您还应该在"并行"中包含该应用程序。
更新:
要在自己的控制台中分别启动服务器和代理,我不知道是否可以使用"java"Ant 任务完成,但我刚刚测试了可以使用"exec"完成:
<target name="doit">
<parallel>
<exec executable="cmd" dir="staging">
<arg line="/k start java.exe pxy.Server"/>
</exec>
<exec executable="cmd" dir="staging">
<arg line="/k start java.exe pxy.ProxyServer"/>
</exec>
</parallel>
</target>