gpt4 book ai didi

hibernate - 如何在多项目 Maven 中配置 Log4j

转载 作者:行者123 更新时间:2023-12-02 10:20:07 25 4
gpt4 key购买 nike

我有一个 Maven War 项目,它依赖于 EJB Maven 项目。 EJB 项目处理所有业务逻辑,包括通过 Hibernate 进行数据库访问。这两个项目都是 JEE6 并使用 maven 在 glassfish 3.1.2 上运行。我目前正在尝试配置 Log4j 以在所描述的场景中工作(也记录 hibernate )。我的 ejb 的 src/main/resources 文件夹中有以下 log4j.xml 文件(我认为它位于类路径中):

    <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j=
"http://jakarta.apache.org/log4j/"
debug="false">

<appender name="consoleAppender"
class="org.apache.log4j.ConsoleAppender">
<param name="Threshold" value="INFO" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d
%-5p [%c{1}] %m %n" />
</layout>
</appender>

<logger name="javabeat.net.log4j" additivity="false" >
<level value="INFO" />
<appender-ref ref="consoleAppender"/>
</logger>
</log4j:configuration>

我不断从 log4j 收到此错误:

SEVERE: log4j:ERROR A "org.apache.log4j.xml.DOMConfigurator" object is not assignable to a "org.apache.log4j.spi.Configurator" variable.

SEVERE: log4j:ERROR The class "org.apache.log4j.spi.Configurator" was loaded by

SEVERE: log4j:ERROR [WebappClassLoader (delegate=true; repositories=WEB-INF/classes/)] whereas object of type

SEVERE: log4j:ERROR "org.apache.log4j.xml.DOMConfigurator" was loaded by [WebappClassLoader (delegate=true; repositories=WEB-INF/classes/)].

SEVERE: log4j:ERROR Could not instantiate configurator [org.apache.log4j.xml.DOMConfigurator].

SEVERE: log4j:WARN No appenders could be found for logger (org.hibernate.type.BasicTypeRegistry).

SEVERE: log4j:WARN Please initialize the log4j system properly.

SEVERE: log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

我没有主意了,谢谢帮助

最佳答案

http://forum.spring.io/forum/spring-projects/batch/76295-log4j-classloader-problem

您好,您提到的问题几乎总是发生在您的 web 应用程序的 lib 和 tomcat lib 目录中都有 log4j.jar 时,就像我发布的链接中所解释的那样,所以您必须选择,其中是 log4j,在所有 webapps lib 文件夹中或仅在 tomcat lib 目录中:)

更新:

此外,您必须避免在 tomcat lib 和 webapp lib 目录中复制 commons-logging.jar。

问候

关于hibernate - 如何在多项目 Maven 中配置 Log4j,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13131460/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com