log4j.xml文件引发错误“元素类型的内容必须匹配“((param *,(priority | level)?, AppenderRef *))”。当包括appender-ref时

时间:2018-10-16 07:57:07

标签: java log4j

首先,该帖子可能是重复的,因为我发现2篇与我的问题相关的帖子,但是这两个帖子中给出的解决方案都无法解决我的问题,因此请自由地将此帖子发布为一个单独的问题。

我正在使用log4j.xml文件将所有日志写入项目中,但是这是我所面临的问题,元素“ appender-ref”包含在其中时抛出错误The content of element type "root" must match "(param*,(priority|level)?,AppenderRef*)". root元素。请让我知道我在做什么错吗?

我的log4j.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">

    <!-- Appenders -->

    <appender name="console" class="org.apache.log4j.ConsoleAppender">
        <param name="Target" value="System.out" />
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%-5p %c{1} - %m%n" />
        </layout>
    </appender>

    <appender name="file" class="org.apache.log4j.RollingFileAppender">
            <param name="File" value="D:/sample.log"/>
            <param name="Append" value="true" />
            <param name="ImmediateFlush" value="true" />
            <param name="MaxFileSize" value="5MB"/>
            <param name="MaxBackupIndex" value="20"/>
            <param name="Threshold" value="error"/>

            <layout class="org.apache.log4j.PatternLayout">
                <param name="ConversionPattern" value="%d %d{Z} [%t] %-5p (%F:%L) - %m%n" />
            </layout>
    </appender>

    <!-- Application Loggers -->
    <logger name="com.test.spring">
        <level value="info" />
    </logger>

    <!-- 3rdparty Loggers -->
    <logger name="org.springframework.core">
        <level value="info" />
    </logger>

    <logger name="org.hibernate">
        <level value="info" />
    </logger>

    <logger name="org.springframework.beans">
        <level value="info" />
    </logger>

    <logger name="org.springframework.context">
        <level value="info" />
    </logger>

    <logger name="org.springframework.web">
        <level value="info" />
    </logger>

    <!-- Root Logger -->
    <root>
        <priority value="info" />
        <appender-ref ref="console" />      
        <appender-ref ref="file" />     
    </root>

</log4j:configuration>

Error shown in my file

我遵循的XML配置顺序:

<renderer></renderer>

<appender></appender>

<plugin></plugin>

<logger></logger>

<category></category>

<root></root>

<loggerfactory></loggerfactory>

<categoryfactory></categoryfactory>

这是我第一次尝试使用log4j.xml文件,因此请在这里忽略我的菜鸟级专业知识。 :)

我经历过的帖子:
How to solve the warnings in log4j???Continuable parsing error...The content of element type "log4j:configuration" must match

“log4j:configuration” must match “(renderer….loggerFactory)?)”

0 个答案:

没有答案