javacコンパイラがファイルとコンソールの両方に出力を書き込むようにする方法は?
質問
ant を使用してjavacタスクを実行しており、レポート用に -Xstdout コンパイラー引数を使用して出力をログファイルに送信しますが、ハドソンが画面上でレビューするために出力をキャプチャできるように、出力もコンソールに送信されるようにします。
これを行う方法はありますか
解決
レコーダータスクを使用する別の方法に出くわしました。 新しいターゲットを導入する必要がないほど近い。
<compile >
<record name="log.txt" action="start"/>
<javac ...
<record name="log.txt" action="stop"/>
<compile/>
他のヒント
出力属性でantタスクを使用して、javacタスクを持つターゲットを呼び出します。
e.g。
<target name="javac" depends="libs" description="Compile java source">
<mkdir dir="${classes.dir}" />
<ant target="actual-javac" output="javac.log"/>
</target>
<target name="actual-javac">
<javac .../>
</javac>
</target>
コマンドラインの任意のプロセスでteeを使用して、コンソールとファイルに出力できます。
>myprocess.sh | tee myprocess.log
myprocess.shの出力をコンソールとmyprocess.logの両方に出力します。
所属していません StackOverflow