log4j不会创建日志文件

时间:2013-11-25 13:42:44

标签: java logging log4j

我尝试将log4j用于我的简单项目。

所有输出到控制台的工作正常。但是输出到创建日志文件的文件不起作用。

Log4j.xml

    <!-- Appenders -->
    <!-- Loggin into console -->
    <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 - %m%n" />
        </layout>
    </appender>

    <appender name="file" class="org.apache.log4j.RollingFileAppender">
        <param name="append" value="false" />
        <param name="file" value="demoApplication.log" />
        <param name="DatePattern" value="'.'yyyy-MM-dd" />
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d [%t] %-5p (%F:%L:%M)  %c{1}  - %m%n" />
        </layout>
    </appender>

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

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

</log4j:configuration>

这是我的项目进展:

enter image description here

为什么会这样?对我来说,一切都应该可行。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

由于您使用的是相对路径,

<param name="file" value="demoApplication.log" />

在以下位置搜索文件:

System.out.println( System.getProperty("user.dir") + File.separator + 
                    "demoApplication.log" );

您也可以使用绝对路径。此外,请验证您是否对目标文件夹具有写入权限。