我在linux系统下配置了一个log4j.property 如下:
  log4j.rootLogger=debug, stdout, R
  log4j.appender.stdout=org.apache.log4j.ConsoleAppender
  log4j.appender.stdout.layout=org.apache.log4j.PatternLayout  # Pattern to output the caller's file name and line number.
  log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n  log4j.appender.R=org.apache.log4j.RollingFileAppender
  log4j.appender.R.File=/opt/logs/cart/cart.log
  log4j.appender.R.MaxFileSize= 100KB  # Keep one backup file
  log4j.appender.R.MaxBackupIndex=1  log4j.appender.R.layout=org.apache.log4j.PatternLayout
  log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n    
这是网上的一个例子,这是类中的引用
static Logger logger = Logger.getLogger(Test.class.getName());

public void testLog(){
 logger.info("Entering application.");
}运行完了后在=/opt/logs/cart/cart.log 没有cart.log文件。请问这是什么原因啊?

解决方案 »

  1.   

    这个和linux或是apache中某些设置有关系吗?
      

  2.   

    把log4j.property修改为log4j.properties。试试。。
      

  3.   

    log4j.properties也是一样的,还是没有生成cart.log文件。
      

  4.   

    我记得在windows中的配置File=/opt/logs/cart/cart.log的路径应该是相对路径。相对你这个系统的路径。
      

  5.   

    刚才试了一下,在windows下能生成文件,在linux下不能生成文件。
      

  6.   

    是不是和apache的某些设置有关啊?有人遇到过这样的问题吗?
      

  7.   

    是不是在linux下得用那个tar.gz来装log4j,而不能直接用那个log4j的jar包