爲什麼log4j.xml無法讀取標記的值?爲什麼log4j.xml無法讀取自己屬性標記的值
IAM越來越例外如下:
log4j:ERROR setFile(null,false) call failed.
java.io.FileNotFoundException: \debug.log (Access is denied)
的log4j.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration debug="true"
xmlns:log4j='http://jakarta.apache.org/log4j/'>
<Properties>
<Property name="logging.folder">D:/logs</Property>
</Properties>
<appender name="fileAppender" class="org.apache.log4j.RollingFileAppender">
<param name="append" value="false" />
<param name="file" value="${logging.folder}/debug.log" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%c{1}] %m%n" />
</layout>
</appender>
<root>
<level value="INFO" />
<appender-ref ref="consoleAppender" />
<appender-ref ref="fileAppender" />
</root>
</log4j:configuration>
請建議我出了什麼問題?
編輯: 蔭相當肯定的概率是不是權限,因爲當我直接使用作爲<param name="file" value="D:/logs/debug.log" />
然後對我來說它的做工精細..現在請告訴我,這可能是實際的問題呢?爲什麼log4j.cml在使用時無法讀取屬性值${somepropertyname}
很清楚,'(訪問被拒絕)'。檢查文件的位置和權限。 –
@SotiriosDelimanolis我在上面添加'編輯',請檢查。 – user3128668
您是否在某處設置了$ {logging.folder}變量。它看起來像權限問題是,它試圖寫入名爲debug.log的文件在根目錄中,而不是/ logs中的文件 – Goibniu