在学习使用log4j的配置文件.我把配置文件和源代码放在同一个目录中(没错吧?),分别是LogTest3.java和TestLog4j.properties.TestLog4j.properties内容:log4j.rootCategory=DEBUG,R
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=log.txt
log4j.appender.R.layout.ConversionPattern=%d{yyyy MMM dd HH:mm:ss} %-5p %c - %m%nLogTest3.java内容:public class LogTest3 {
   static Logger logger = Logger.getLogger(LogTest3.class);
   public static void main(String args[]) {
   
  PropertyConfigurator.configure("TestLog4j.properties");
      logger.debug("Here is some DEBUG");
      logger.info("Here is some INFO");
      logger.warn("Here is some WARN");
      logger.error("Here is some ERROR");
      logger.fatal("Here is some FATAL");
   }
}
该加载的包都import了,编译也没有抱错,可就是看不到生成日志文件
为什么呢????

解决方案 »

  1.   

    你对log4j的配置不对,这里不是指的你的配置文件不对,而是指的你的配置文件的使用方法不对。
    首先你的配置文件可以放在源代码所在的文件夹,但是这样做并不推荐,最好是将配置文件存放在classes文件夹或者lib文件夹,同时你的配置文件最好采用log4j.properties的命名,别修改配置文件的名称。因为log4j运行时默认的配置文件必须用这个名字,而不是你这里的TestLog4j.properties。
    你这里如果想看到log4j的运行结果,可以按照如下方法来做:
    1、将你的LogTest3.class文件存放在classes文件夹(如果没有这个文件夹可以自己建立)
    2、将配置文件log4j.properties存放在classes的根目录
    3、在cmd中输入:java LogTest3
    这样就会有日志文件输出了。当然,对于log4j的功能远远不只这些,log4j的配置文件当然也可以用别的名字,如a.properties,不一定非要用log4j.properties同时该配置文件的存放路径也可以在任何地方,至于这些楼主可以进一步学习,这里我就不多说了。