Hibernate(4.3.11-Final)日志记录没有桥接到log4j2?

时间:2016-06-10 09:31:42

标签: spring hibernate logging log4j log4j2

我们正在从log4j迁移到log4j2。我们使用以下库和日志记录机制:

Tomcat(使用JULI),Spring 4.2.0(使用commons-logging)和Hibernate 4.3.11-Final(使用jboss-logging)。

我已成功将Spring桥接到log4j2,但Hibernate日志记录无法正常工作。

根据Hibernate文档:

  

要将JBoss Logging与Log4j2一起使用,log4j2 jar也需要在类路径上可用。

我的类路径上有以下与日志相关的jar:

  • 共享记录-1.2.jar
  • 的JBoss-测井3.1.3.GA.jar
  • JBoss的测井的注解-1.2.0.Beta1.jar
  • 的log4j-API-2.6.1.jar
  • log4j的核 - 2.6.1.jar
  • 的log4j-JCL-2.6.1.jar
  • 的log4j-SLF4J-IMPL-2.6.1.jar
  • SLF4J-API-1.7.5.jar
  • SLF4J-log4j12-1.7.5.jar

为什么我没有看到我期望的结果?

1 个答案:

答案 0 :(得分:4)

hibernate-4附带的jboss-logging版本与log4j2不兼容。

我必须导入版本3.3.0.Final(应该从3.1.4开始,根据JBLOGGING-94),以便hibernate与log4j2一起使用。

如果你使用maven,这是一个快捷方式:

<dependency> <!-- version working with log4j2 -->
    <groupId>org.jboss.logging</groupId>
    <artifactId>jboss-logging</artifactId>
    <version>3.3.0.Final</version>
    <scope>runtime</scope>
</dependency>