import org.apache.log4j.Logger;public class MyLog {
   static  Logger log = Logger.getLogger(MyLog.class.getName());
   public static void main(String[] args) {
  
log.info("Hello用户进入系统");
log.info("Hello用户添加了日志模块");
log.info("Hello用户编辑的日志模块");
}
}
这是我的一个测试类2009-01-13 02:40:10  INFO [main]  - Hello用户进入系统 - (corejava2.throwable.MyLog.MyLog.java:9)
2009-01-13 02:40:10  INFO [main]  - Hello用户添加了日志模块 - (corejava2.throwable.MyLog.MyLog.java:10)
2009-01-13 02:40:10  INFO [main]  - Hello用户编辑的日志模块 - (corejava2.throwable.MyLog.MyLog.java:11)这是我控制台的输出log4j.rootLogger =INFO,console,file
#console config
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} %5p [%t]  - %m - (%c.%F:%L)%n#file config
log4j.appender.file = org.apache.log4j.RollingFileAppender 
log4j.appender.file.File =d:/logs.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout 
log4j.appender.file.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} %5p [%t] - %m  -(%c.%F:%L)%n这是我log4j配置文件里的配置我的log4j放在src根目录下
我现在的疑惑就是
我这个类放在了corejava2.throwable.MyLog.java路径下
可是log4j 给出的路径是corejava2.throwable.MyLog.MyLog.java
怎么回事

解决方案 »

  1.   

    我这个类放在了corejava2.throwable.MyLog.java路径下
    》放在这个路径下,是指你的MyLog.java文件放在了"corejava2.throwable.MyLog.java"这个包中?
      

  2.   

    我的意思可能有点模糊Mylog.java放在了corejava2.throwable包路径下 现在明白了?
      

  3.   

    (%c.%F:%L)%n
    估计是这里的问题  
      

  4.   

    log4j.appender.console.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} %5p [%t] - %m  -(%c.java:%L)%n硬拼的 就这样吧
      

  5.   

    %c: 输出日志信息所属的类目,通常就是所在类的全名
    %F: 输出日志消息产生时所在的文件名称
    %l: 输出日志事件的发生位置,相当于%C.%M(%F:%L)的组合,包括类目名、发生的线程,以及在代码中的行数。