(クルーズコントロールを介して)antスクリプトをトリガーしていますが、特定のantターゲットのstdoutとstderrをプレーンテキストファイルにダンプできるようにしたいと考えています。
はい、私はクルーズコントロールがすでにこの情報を含むXMLログファイルを維持していることを知っていますが(他の多くのものの中でも)、移植性の理由から、これはantスクリプト自体から発生する必要があります。
これは可能ですか?もしそうなら、それをどのように行うのですか?
どうもありがとう!
(クルーズコントロールを介して)antスクリプトをトリガーしていますが、特定のantターゲットのstdoutとstderrをプレーンテキストファイルにダンプできるようにしたいと考えています。
はい、私はクルーズコントロールがすでにこの情報を含むXMLログファイルを維持していることを知っていますが(他の多くのものの中でも)、移植性の理由から、これはantスクリプト自体から発生する必要があります。
これは可能ですか?もしそうなら、それをどのように行うのですか?
どうもありがとう!
それは簡単です:
ant -logfile <logfile> <command>
そして、あなたはまた、アリを黙らせると言うことができます:
ant -q <command>
それは私にはうまくいきました。
レコーダタスクは、必要なことを実行できる場合があります。
<record name="log.txt" action="start"/>
...
<record name="log.txt" action="stop"/>
それを超えて、特定のタスク(exec、javaなど)はそれ自体で(通常は 引数を使用して)この機能を提供output
しますerror
これを試して:
<java classname="some.package.Class"
fork="yes"
output="stdouterr.txt">
...
</java>
stdouterr.txt
stdoutとstderrの両方が含まれます
<java classname="some.package.Class"
fork="yes"
output="stdout.txt"
error="stderr.txt">
...
</java>
stdout.txt
それぞれstdoutとstderr.txt
stderrが含まれます
私の経験から、antスクリプトがクルーズコントロールで実行されると、ファイルアクセス許可が原因で、記録タスクが失敗する傾向があります(誰かが私が幸せになることを修正する方法を教えてくれれば)。
HTH