18

私はそのパッケージの違いを知っています

1)org.apache.log4j.Logger logger = Logger.getLogger(clazz);

2)org.apache.commons.logging.Log log = LogFactory.getLog(clazz);

最初のものは 経由でロガーを使用log4jし、2 番目のものは を使用しcommons.loggingます。一部のクラスではロガーが構成log4jされ、場合によってはそのを使用する巨大なプロジェクトがありますcommons.logging

log4j プロパティ ファイルは見つかりましたが、同様のプロパティ ファイルはありcommons.loggingますか? commons-logging はどこで設定しますか?. によって生成されたログを表示できませんcommons-logging

どんな助けでも大歓迎です。

4

1 に答える 1

11

との間の選択肢がありました) から抽象化することになっているファサード API であるjava.util.loggingため、コードに触れることなく、あるものから別のものに切り替えることができます - で利用可能なライブラリを切り替えるだけです。クラスパス。

残念ながら、いくつかの設計ミスにより、アプリケーション サーバーなどの複雑なクラス ロード環境で問題が発生しました。に取って代わられています。

あなたの場合、commons-logging は (ほとんどの場合) log4J に委任されますが、Log4J または commons-logging のいずれかの 1 つの API に固執することをお勧めします。SLF4J を使用するように移行してブリッジ API をインストールすることもできますが、これは少し高度です。

于 2012-04-20T13:07:55.803 に答える