2012-02-10 9 views
0

Windowsマシン上でANTに.cmdファイルを実行させたいのですが、コマンドプロンプトを表示しないでください。プロセスはバックグラウンドで実行されている必要があります。 Antはコマンドを起動し、次のコマンドを実行する必要があります。 私は窓 "/ B"スイッチを使ってみましたが、うまくいきませんでした。 誰か提案がありますか?そのようなANT:ウィンドウでのバックグラウンドプロセスの開始

答えて

2

利用のexecタスク:

<exec executable="cmd" spawn="true"> 
    <arg value="/c"/> 
    <arg value="foobar.cmd"/> 
</exec> 

あなたがスタート/ Bを使用する必要があるそうでない場合には、十分なものでなければならない...:

<exec executable="cmd"> 
    <arg value="/c"/> 
    <arg value="start"/> 
    <arg value="/b"> 
    <arg value="foobar.cmd"/> 
</exec> 

詳細はant manual exec taskを参照してください。

+0

開始コマンドには、最小化されたコマンドを実行するための(ユーザーを悩ますためのコンソールなしの) "/ min"オプションがあります。 http://www.computerhope.com/starthlp.htm –

+0

を参照してください。第1のオプションcmdを実行しましたが、その後、コントロールはant build.xmlファイルの残りのコマンドを実行するために戻ってきません。私はexecタスクでアプリケーションサーバーを起動しているので、バックグラウンドでサーバーを起動した後、残りの操作を正常に実行する必要があります。 – ConfusedTester

+0

execから呼び出されたcmdが終了すると、Antはコントロールを再び取得します。 execタスクによって開かれた外部プロセスが正しく閉じられているかどうか、タスクマネージャを調べます。いずれの場合でもプロセスが終了するようにするには、 .. execがここに... http://ant.apache.org/manual/を参照してください。 Tasks/parallel.html また、スタンドアロンのcmdを起動して、antから正しく動作するかどうかを確認してください。 – Rebse

関連する問題