2016-07-25 14 views
1

は、コードのこの部分を見てください:なぜlog.infoを呼び出しても出力されないのですか?

import java.util.logging.Logger 

class Base { 

    Logger log = new Logger(Base.getClass().name); 

    static main(args) { 
    def b = new Base(); 
    b.log.info('hello'); 
    } 

} 

私はそれをコンパイルすると、私はエラーや警告が表示されません。 しかし、私はそれを実行しようとすると、私は空の出力を参照してください。 なぜですか?

答えて

4

新しいLoggerをインスタンス化しないでください。Logger.getLogger()を使用して、必要なロガーを取得/作成してください。あなたがnew Logger()を使用したい場合は、ちょうどあなたのログ出力を表示するハンドラを割り当てる必要がありますように

Logger LOGGER = Logger.getLogger(Base.class.name) 
LOGGER.info('hello') 

はしかし、それが見えます。

Logger LOGGER = new Logger(Base.class.name) 
LOGGER.addHandler(new java.util.logging.ConsoleHandler()) 
LOGGER.info('hello') 
+0

Thx。それを知らなかった。 – Josua

関連する問題