我有一個java命令行工具,可以在最開始時關閉註銷,然後解析命令行,之後可能再次打開日誌記錄,具體取決於命令行處理的結果。更改記錄器可能會丟失
主要方法是這樣開始的:
public static void main(final String[] args){
java.util.logging.LogManager.getLogManager().reset();
java.util.logging.Logger globalLogger = java.util.logging.Logger
.getLogger(java.util.logging.Logger.GLOBAL_LOGGER_NAME);
globalLogger.setLevel(java.util.logging.Level.OFF);
[... parse command line and possibly turn logging back on]
現在FindBugs的給予 「令人不安」 警告說:
更改記錄器可在com.bmw.fnw丟失。 DBMainDialog.main(String [])
從Find Bugs Description 我下認爲記錄器可以在不應該時記錄下來。
如何正確關閉記錄儀?
無論您使用的是哪個JDK。運行該代碼的人可能會使用OpenJDK。因此,無論您使用的是哪個JDK,都應該修復這個「bug」。 – Polygnome 2012-08-14 09:57:31
感謝您的回答。我做了我的記錄器'私有最終靜態',但現在FindBugs抱怨'globalLogger.setLevel(java.util.logging.Level.OFF);'具有相同的錯誤消息。現在我該怎麼做? – bbuser 2012-08-14 14:23:28