0

Windows2008R2のANTからTomcat7.0.xサーバーを起動しようとして立ち往生しています。

これは私が使用しているコードです:

<exec executable="cmd.exe" spawn="true">
  <env key="CATALINA_HOME" value="${tomcat.home}" />
  <arg line="/C '${tomcat.home}/bin/startup.bat'"/>
</exec>

問題は、spawnをtrueに設定し、cmd.exeを呼び出すときに/ Cパラメーターを使用しても、ビルドがハングし、Tomcatを停止するまで終了しないことです。

理由を知っていますか?理論的には正常に機能する同様のコードを使用して、stackoverflowで多くの投稿を見てきました。他の投稿ではcmdの代わりにbashを使用していますが、私が知る限り、bashはUnixの世界にのみ存在します。

何か助けはありますか?

どうもありがとう、

ケミ。

4

2 に答える 2

0

これは、これまで使用してきた私の ant スクリプトの一部です。開発では毎日使用され、本番環境でもTomcatを起動および停止するために使用します(ただし、すべて* NIX上です...何らかの理由でMicrosoft Windowsで実行する必要がある開発者が数人いますが、これはそうではないようです彼らに問題を提示するため)。

私が知っている吊り下げに問題はありません。

<exec osfamily="unix" executable="${app.tomcat-home}/bin/catalina.sh">
  <env key="JAVA_HOME" value="${app.java-home}" />
  <env key="JAVA_OPTS" value="${effective.JAVA_OPTS}" />
  <env key="CATALINA_BASE" value="${app.home.dir}" />
  <env key="CATALINA_OPTS" value="${effective.CATALINA_OPTS}" />

  <arg value="start" />
  <arg value="${security-option}" />
</exec>

<!-- Separate script for win32 -->
<exec osfamily="winnt" executable="${app.tomcat-home}/bin/catalina.bat">
  <env key="JAVA_HOME" value="${app.java-home}" />
  <env key="JAVA_OPTS" value="${effective.JAVA_OPTS}" />
  <env key="CATALINA_HOME" value="${app.tomcat-home}" />
  <env key="CATALINA_BASE" value="${app.home.dir}" />
  <env key="CATALINA_OPTS" value="${effective.CATALINA_OPTS}" />

  <arg value="start" />
  <arg value="${security-option}" />
</exec>

すべてのプロパティの定義は、読者の演習として残しておきます。

于 2013-01-28T22:39:26.883 に答える
0

Windowsについてはよくわかりませんが、この議論に基づいています(http://mail-archives.apache.org/mod_mbox/ant-user/200108.mbox/%3C2D90C2075E27D4118960000629A832E503751900@scooby.corp.bspark.com%3E)試してみてください:

<exec dir="${tomcat.home}/bin" executable="start">
    <arg line="startup.bat" />
    <env key="CATALINA_HOME" value="${tomcat.home}" />
</exec>
于 2013-01-28T19:14:02.387 に答える