我的配置文件是这样的:
log4j.rootLogger=INFO, R
log4j.appender.R=org.apache.log4j.DailyRollingFileAppender
log4j.appender.file2.encoding=UTF-8
log4j.appender.R.File=C:\\logs\\myLog
log4j.appender.R.DatePattern='.'yyyy-MM-dd'.log'
ImmediateFlush=true
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%5p %d{yyyy-MM-dd HH:mm:ss} %c - %m%n问题:
1.log4j.appender.R.File=C:\\logs\\myLog。若c盘无logs文件夹时,报错:
       log4j:ERROR setFile(null,true) call failed.
       java.io.FileNotFoundException: C:\logs\myLog (系统找不到指定的路径。)
怎么让无文件logs不存在时创建此文件夹
2.生成日志文件的名称不是myLog.yyyy-MM-dd.log形式的,而是myLog,后缀名都没谁能帮忙解决,谢谢!!

解决方案 »

  1.   

    1.据说log4j 更换到1.2.9就可以自动创建文件夹了
    2.log4j.appender.R.DatePattern='.'yyyy-MM-dd'.log' 换成log4j.appender.R.DatePattern='.'yyyy-MM-dd 试试
      

  2.   

    log4j.appender.R.DatePattern=yyyy-MM-dd'.log4j'文件夹就自己建上吧。这里有个 log4j 较全面的配置:http://unmi.cc/log4j-full-config
      

  3.   

    我现在用的就是1.2.9的jar包,不能创建。
    试了下,上面两位提出的方法都不行
      

  4.   

    刚尝试了下,应该是这个配置:
    log4j.appender.R.File=C:\\logs\\myLog
    log4j.appender.R.DatePattern='.'yyyy-MM-dd'.log'
    今天生成的日志名称是myLog,明天再生成日志文件就会把今天生成的myLog更改成myLog.yyyy-MM-dd.log文件夹的问题还是没解决。
      

  5.   

    补充  第一个   ${user.home}\\myLog.log
    是系统盘符下的 docment 里