5

我正在编写使用 Hibernate 的独立 Java 应用程序。Mavenjboss-logging为我带来了图书馆。我没有使用 JBoss。问题是:我可以只用这个库登录,还是需要下载一些日志实现,比如log4j

4

3 回答 3

8

JBoss Logging 只是一个日志外观。要配置您的记录器,例如使用/添加处理程序,您需要一个日志管理器,如 JBoss 日志管理器、JUL 日志管理器、logback 或 log4j。

JBoss Logging 将尝试发现正在使用的日志管理器。您可以指定要与org.jboss.logging.provider系统属性一起使用的日志管理器。`org.jboss.logging.provider' 的允许值为:

  • jboss - 用于 JBoss 日志管理器
  • jdk - 用于 JUL 日志管理器
  • log4j - 对于 log4j 日志管理器
  • slf4j - 使用 slf4j 进行 logback

Hibernate 使用 JBoss Logging 是因为它的 i18n 功能、可变参数日志记录方法以及不绑定到日志管理器的能力。

当然,您绝对可以在您的项目中使用 JBoss Logging。如果要配置日志处理程序,还必须使用日志管理器。

于 2012-09-17T18:54:14.390 回答
1

afaik,jboss-logging 更像是普通日志 API 之上的一个额外层,以提供更复杂的功能,如 i18n 等。

JBoss-logging 可以使用其他日志库(例如 SLF4J)作为日志的底层处理程序。

我相信如果你正在编写一个简单的独立 Java 应用程序,你不需要使用 JBoss-logging(除非你知道你真的想要并且需要这样做)。

使用 SLF4J(带有 LogBack 或 Log4J 绑定)将是一个不错的选择。访问http://slf4j.org了解更多信息

于 2012-09-17T09:39:00.643 回答
1

确保您的类路径中有记录器实现,jboss-logging并将系统属性设置org.jboss.logging.providerlog4j、或取决于您想要的。理论上,自动检测也可以工作。jdkslf4jjboss

https://github.com/jboss-logging/jboss-logging/blob/master/src/main/java/org/jboss/logging/LoggerProviders.java#L29

于 2012-09-17T10:41:05.717 回答