javacコンパイラがファイルとコンソールの両方に出力を書き込むようにする方法は?

StackOverflow https://stackoverflow.com/questions/1235970

  •  22-07-2019
  •  | 
  •  

質問

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の両方に出力します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top