[英]Logging standard for utility library
我正在編寫一個小型實用程序庫,我需要進行一些日志記錄。 我不想強迫用戶必須使用特定的日志記錄框架,例如Log4J或commons-logging,所以我應該使用SLF4J並包括所有的網橋,以便它與他們使用的任何內容進行集成嗎? 還是應該只使用java.util.logging? 我應該提到這也是一個Maven項目。
就個人而言,在這種情況下,我只有以下運行時依賴項:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</dependency>
這些用於測試:
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<scope>test</scope>
</dependency>
因此,當某人想要使用我時,他們只需要包括用於實現日志記錄的橋。
編輯 :我使用依賴項管理,這就是缺少版本的原因:)
是的,很不幸,那里有這么多不同的日志記錄框架...
如果要避免將客戶綁定到特定的日志記錄實現,那么slf4j是最佳選擇。 另一個替代方法是Apache Commons Logging,但存在嚴重問題。 參見http://articles.qos.ch/thinkAgain.html 。
(如果使用java.util.logging,則違反了主要要求...)
另一種選擇是根本不對庫進行任何日志記錄。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.