我是一个用于在debian squeeze上启动java进程的init.d脚本。如果我在ant ant build中调用这个脚本,如:
<target name="deploy-CdrServer-local">
<ant antfile="${CdrServer.location}/build.xml" target="deploy-local" inheritAll="false">
<property name="basedir" value="${CdrServer.location}" />
</ant>
<exec dir="/etc/init.d" spawn="false" executable="bash" newenvironment="false">
<arg line="cdrserver restart"/>
</exec>
</target>
脚本被执行但是蚂蚁&#34;挂起&#34;在以下输出之后:
[copy] Copying 1 file to /opt/CdrServer
[copy] Copying 7 files to /opt/CdrServer/CdrServer_lib
[exec] Stopping CdrServer ...
[exec] CdrServer server process stopped
[exec] Starting CdrServer ...
[exec] cat $PIDFILE
[exec] CdrServer has PID: 24170
[exec]
[exec]
[exec] restarted CdrServer
[exec] exit 0
我在ant文档中看到设置inputstring =&#34;&#34;因为参数会有所帮助,但它不会...
有什么想法吗?
答案 0 :(得分:0)
我发现在执行生成后台子进程的脚本时,ant会挂起在solaris上。
为了修复它,我改变了脚本,以便它吐出一个文件“是的,我完成了”。然后我修改了ant文件以删除该文件,用spawn-“true”执行该脚本,然后等待该文件出现。