SLF4Jを使用して、JUL(Java Utils Logging)のランタイムバインディングでロギングを処理するJavaアプリを作成しています。したがって、私のクラスパスにslf4j-api-1.6.4.jar
もslf4j-jdk14-1.6.4.jar
その上にあります。
JULはを介して構成できるlogging.properties
ため、クラスパスでもJULが必要になります。
すべてのサードパーティの依存関係が同じJUL構成にログに記録されるようにするために、次のすべてのブリッジもクラスパスに配置することを計画しています。
jcl-over-slf4j-1.6.4.jar
log4j-over-slf4j-1.6.4.jar
JCLはを介して構成されcommons-logging.properties
、Log4Jはを介して構成されますlog4j.properties
。
私の質問:クラスパスを設定する必要がありcommons-logging.properties
ますlog4j.properties
か、それともSLF4Jブリッジのためにこれは不要ですか?
必要はないと90%確信していますが、ここで健全性チェックが必要です。私の理論では、ブリッジは通常のJCL / Log4Jクラスを、SLF4JAPI呼び出しを盲目的に呼び出すスタブに置き換えます。
これらのSLF4JAPI呼び出しは、私のコードと同様に、実行時にバインドする実装を使用します。私の場合のバインディングはJULなので、logging.properties
必要なのはファイルだけです。
しかし、私は伐採の専門家ではないので、後悔するよりは安全だと思います。したがって、これらの追加の構成ファイルが必要ですか。必要な場合は、SLF4Jがどのように機能するかをよりよく理解できるように、その理由を説明してください。前もって感謝します!