2016-12-02 56 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