2012-12-28 45 views
3

有沒有辦法關閉playOrm中的INFO日誌記錄?我已經試過我的log4j.xml配置設置爲關閉記錄播放器或遊戲

<!-- Application Loggers --> 
<logger name="com.alvazan"> 
    <level value="off" /> 
</logger> 

但我仍然獲取信息從com.alvazan記錄的基調。

在此先感謝。

回答

1

log4j領先,並創建了slf4j和logback日誌記錄。 playOrm使用SLF4J,這意味着你需要做一些jar交換,所以SLF4j使用的impl是log4j,那麼這將工作得很好。默認情況下,我們使用logback作爲實現,因爲log4j dude建議這樣做(您只需更改logback jar並將它們交換出slf4j-log4j jar,它就可以爲您工作並刪除log4j-over-slf4j。罐子)。

如果你在庫中使用SLF4J,你可以在任何平臺上工作,而不管他們使用什麼日誌記錄。log4j,jdk,commons等等。commons有類加載問題,而SLF4j沒有。重新開始使用SLF4j,但這裏速度很快。

SLF4j有4個適配器JAR,以便日誌記錄到log4j到SLF4j並記錄到jdk日誌記錄去SLF4j API和公用等等。除非你使用那個JAR IMPL。您可以包含所有這些jar文件,以便通過一個配置文件控制平臺中所有庫的日誌記錄。

然後有api罐子。

然後有4個執行罐。不喜歡適配器的瓶子,你需要包括他們所有的人,在這種情況下,你選擇一個單一的impl jar或slf4j會記錄一個很好的大警告,並選擇一個自己。在你的情況下,選擇log4j實現,然後你可以控制所有庫,即使它們也登錄到jdk或commons日誌記錄框架。

院長

+0

感謝院長。刪除logback依賴項並添加slf4j-api jars就有竅門了! –

1

您可以編輯的pom.xml排除lobback經典:

<dependency> 
     <groupId>com.alvazan</groupId> 
     <artifactId>playorm</artifactId> 
     <version>1.6</version> 
     <scope>compile</scope> 
     <exclusions> 
     <exclusion> 
      <artifactId>logback-classic</artifactId> 
      <groupId>ch.qos.logback</groupId> 
     </exclusion> 
     </exclusions> 
</dependency>