2016-04-02 20 views
0

私は、既に作成されたフレームワーク(Sponge)にコードを追加するためにGradleを使用するMinecraft用のプラグインを作成しています。私がLombokから@ Slf4j注釈を使用しようとすると、私が使用できるログの唯一のレベルはinfo以上です。私は別の投稿で見たコメントに基づいて、これはslf4jシンプルを使用していることを示しています。これは既に拡張しているフレームワークに組み込まれている必要があります。 logger4jを依存関係として追加すると、slf4jはlogger4jの代わりに単純なslf4jを使い続けます。他のメソッドに加えて、logger.debugとlogger.traceを使用できるようにしたいと考えています。私は何か正しく構成していないのですか?単純なslf4jの代わりにlogger4jを使用するようにslf4jに指示するにはどうすればよいですか?Slf4jはlogger4jの代わりに単純なslf4jを使用しています

答えて

0

slf4jの実装が複数ある場合。それはランダムに1つを拾うでしょう。したがって、単純なslf4ではなくlog4jを使用する場合は、クラスパスからsimple-slf4j.jarを削除することができます。

modre detaile:http://www.slf4j.org/codes.html#multiple_bindings

そして、あなたはそれらを同時に使用したい場合は、あなただけのSLF4Jせずに直接のlog4jを使用することができます。 exmapleの場合:

import org.apache.log4j.*; 
public class LogTest { 
    static Logger logger = Logger.getLogger(LogTest.class.getName()); 
    public static void main(String[] args) { 
    PropertyConfigurator.configure ("src/log4j.properties"); 
    logger.debug("Debug ..."); 
    logger.info("Info ..."); 
    logger.warn("Warn ..."); 
    logger.error("Error ..."); 
} 

}

関連する問題