使用ant启动分叉的java进程



我有这个用于ant的构建xml:

<project>
  <target name="JSCover-start">
     <java jar="/root/JSCover/target/dist/JSCover-all.jar" fork="true" spawn="true">
        <arg value="-ws"/>
     </java>
     <waitfor maxwait="5" maxwaitunit="second" checkevery="250" checkeveryunit="millisecond" timeoutproperty="failed">
        <http url="http://localhost:8080/jscoverage.html"/>
    </waitfor>
    <fail if="failed"/>
  </target>
</project>

它构建良好,但过程尚未启动。

下面的启动服务器非常好:

/usr/bin/java -jar /root/JSCover/target/dist/JSCover-all.jar -ws

发布的代码看起来是正确的,所以问题可能是其他原因。试试这个:

  1. 启用JSCover-all.jar的调试/详细输出
  2. 删除fork="true" spawn="true",因为这些选项可能会将stdout/stderr重定向到/dev/null,这意味着您不会看到JSCover-all.jar试图告诉您的任何错误
  3. -debug运行ant,看看它试图做什么;也许这会给你一个提示

根据我作为一名开发人员的经验,我的第一个猜测是

a) 该端口不可用(另一台服务器已在使用它)或
b) 您的服务绑定到*:8080,即测试尝试连接到localhost时计算机的公共IP地址。这些都不一样。

最新更新