2009-08-12 13 views
3

Antを使用してJavaクラスを実行しているとき、log4propertiesがクラスパス上にあったとしても、Log4Jの出力を得るのに苦労しました。他の誰かが同じ問題を抱えている場合に備えてここに文書化してください。JavaクラスからのLog4J出力をAntで開始するにはどうしたらいいですか?

など。

<java classname="Hello" fork="true">  
    <classpath> 
    <fileset dir="${lib.dir}"> 
     <include name="**/*.jar"/> 
    </fileset>  
    </classpath> 
</java> 

答えて

6

これは、次のようなものを使用して解決することができます:あなたはそれがコンフィギュレーションファイルだためにlog4jが見ている場所を確認する好奇心旺盛であれば

<property name="log4j" value="file:///${basedir}/log4j.properties"/> 
... 
<java classname="Hello" fork="true"> 
    <sysproperty key="log4j.configuration" value="${log4j}"/> 
    <classpath> 
     <fileset dir="${lib.dir}"> 
      <include name="**/*.jar"/> 
     </fileset>  
    </classpath> 
</java> 
+0

これを記録していただきありがとうございます。 – hidralisk

2

log4j.debugシステムプロパティを設定してみてください。

<java classname="Hello" fork="true"> 
    <sysproperty key="log4j.debug" value="true" /> 
    <classpath> 
    … 
    </classpath> 
</java> 

これは、設定ファイルがどこにあるかを示すstderrに関する情報を表示します。 manualに簡単な説明があります。

関連する問題