2016-12-02 12 views
2

当我运行一个简单的主Java类,我有这样的红色消息:log4j的红色消息在我的Java执行

log4j:WARN Continuable parsing error 3 and column 83 
log4j:WARN Attribute "status" must be declared for element type "log4j:configuration". 
log4j:WARN Continuable parsing error 31 and column 23 
log4j:WARN The content of element type "log4j:configuration" must match "(renderer*,throwableRenderer?,appender*,plugin*,(category|logger)*,root?,(categoryFactory|loggerFactory)?)". 

我应该通过的log4j.xml文件中的log4j的配置?

我log4j的文件是:

<log4j:configuration xmlns:log4j='http://jakarta.apache.org/log4j/' status="INFO"> 

错误说,这个属性是不是在DTD中声明,从而使XML非:

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

    <appender name="consoleDebug" class="org.apache.log4j.ConsoleAppender"> 
     <layout class="org.apache.log4j.PatternLayout"> 
     <param name="ConversionPattern" 
      value="[%d{yyyy-MM-dd HH:mm:ss} - %-5p %c{1}:%l]: %m%n" /> 
     </layout> 
    </appender> 

    <appender name="consoleInfo" class="org.apache.log4j.ConsoleAppender"> 
     <layout class="org.apache.log4j.PatternLayout"> 
     <param name="ConversionPattern" 
      value="[%d{yyyy-MM-dd HH:mm:ss}]: %m%n" /> 
     </layout> 
    </appender> 

    <category name="org.openqa.selenium"> 
     <priority value="off" /> 
    </category> 
    <category name="org.apache.log4j"> 
     <priority value="off" /> 
    </category> 

    <root> 
     <level value="INFO" /> 
     <appender-ref ref="consoleInfo" /> 
    </root> 

</log4j:configuration> 
+0

发布您的log4j.xml –

+0

看起来它已经从某个地方加载了log4j配置文件,并且它有一些错误 – BretC

+0

我在发布了我的log4j文件。 – sgrillon

回答

1

从该行中删除status="INFO"属性-有效。

错误消息来自XML解析器,并且它建议声明​​中的属性。当然,在这种情况下更改DTD是没有意义的,所以只需从<log4j:configuration>元素中删除status属性即可。

+0

delete status =“INFO”解决问题并在解决其他问题后输入 sgrillon