如何将Hibernate从jboss-logging切换到logback?

5
我发现我的Hibernate依赖同时也引入了对JBoss-logging的依赖。
我是否可以切换到我已经使用的Logback日志记录?
更新:
我尝试了三个位置来设置org.jboss.logging.provider:
1)在Spring的JPA属性中
2)在pom.xml中作为系统属性
3)在应用程序上下文中作为系统属性
.setJpaProperties(additionalProperties());

2) 在 main() 中设置属性:

System.setProperty("org.jboss.logging.provider", "slf4j");

3) 在命令行中设置属性:

-Dorg.jboss.logging.provider="slf4j"

两者都没有起作用。

我遇到了一个异常:

Caused by: java.lang.ClassNotFoundException: org.jboss.logging.Logger
    at java.net.URLClassLoader$1.run(URLClassLoader.java:372)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 32 more

请注意,我已经从依赖项中排除了Jboss日志记录:
 <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-entitymanager</artifactId>
        <version>4.3.7.Final</version>
        <exclusions>
            <exclusion>
                <groupId>org.jboss.logging</groupId>
                <artifactId>jboss-logging</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.jboss.logging</groupId>
                <artifactId>jboss-logging-annotations</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

可能是如何在Hibernate 4中配置日志记录?的重复问题。 - Kayaman
1个回答

3

我在standalone.conf.bat文件中设置了属性:

SET "JAVA_OPTS=%JAVA_OPTS% -Dorg.jboss.logging.provider=slf4j"

Logger.class可以在JBOSS_HOME\modules\org\jboss\logging\main文件夹下的jboss-logging jar中找到。该模块默认存在。

我最近也遇到了类似的问题。如果您解决了Logger.class问题,我认为您将面临这个问题。

我遇到了这个异常:

ClassNotFoundException: org.slf4j.LoggerFactory from [Module "org.jboss.logging:main"

我在JBOSS_HOME\modules\org\jboss\logging\main\module.xml文件中添加了一个关于slf4j的依赖项。

<module xmlns="urn:jboss:module:1.1" name="org.jboss.logging">
  <resources>
      <resource-root path="jboss-logging-3.1.0.GA.jar"/>
  </resources>

  <dependencies>
     <module name="org.jboss.logmanager"/>
     <module name="org.slf4j" slot="1.7.5" />
  </dependencies>
</module>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接