我有一個簡單的設置登錄消息:JDK 8 Update 65
和Eclipse Mars
爲什麼java.util.logging.Logger會打印到stderr?
import java.util.logging.Logger;
public class Example {
private final static Logger LOGGER = Logger.getLogger(Example.class.getName());
public static void main(String[] args) {
LOGGER.info("Test");
}
}
我希望對stdout
得到一個輸出,就像使用System.out.println();
。
但是相反沾到了stderr
,導致紅色字體Eclipse控制檯上打印出來:
我知道我可以通過編寫自定義Handler
改變這種行爲,但我想知道爲什麼默認輸出出現在stderr
而不是stdout
?
記錄程序應該使用stdout
爲fine
+ info
和使用stderr
爲severe
水平。
您是否有此聲明的來源或證據? –
對不起,我應該在評論中提供它:) https://www3.ntu.edu.sg/home/ehchua/programming/java/JavaLogging.html –
記錄器是否已經被OP知道,問題是:「爲什麼」。 – Tom