首页 > 解决方案 > 未创建带有 log4j 日志的文件

问题描述

搜了一下,没找到合适的,这里是文件夹resources中的配置文件:

log4j.rootLogger=INFO, file
        
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=C:\\Users\\38096\\Desktop\\Directories\\logs
log4j.appender.file.MaxFileSize=1MB
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

Maven依赖:

<dependency>
  <groupId>org.apache.logging.log4j</groupId>
  <artifactId>log4j-core</artifactId>
  <version>2.13.3</version>
</dependency>

主要代码:

static Logger log = LoggerFactory.getLogger(Application.class);

    public static void main(String[] args) throws InterruptedException {

            log.debug("Hello this is a debug message");
            log.info("Hello this is an info message");

想法输出

2020-10-02 22:36:47 DEBUG Application:25 - Hello this is a debug message
2020-10-02 22:36:47 INFO  Application:26 - Hello this is an info message

Process finished with exit code 0

但没有创建日志文件

尝试更改依赖项,添加不同的代码,例如

static {
        PropertyConfigurator.configure("D:\\intelliJIDEAProjects\\CRUDCOMPUTER\\src\\main\\resources\\log4j.properties");
    }

配置文件

log4j.rootLogger=file, stdout


log4j.appender.file.File=C:\\Users\\38096\\Desktop\\Directories\\logs
log4j.appender.file.MaxFileSize=10MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n


log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p 
%c{1}:%L - %m%n

没有任何帮助,我怀疑没有写访问权限,但我不知道如何解决它

标签: javaxmlmavenlog4j

解决方案


看来您正在使用 log4j2。这有一个不同的配置文件。您使用的配置文件适用于 log4j 1.X。尝试更改依赖项以使用 log4j 1.X 或更改配置文件以匹配 log4j2 规范。

(注:这是我原来的评论)


推荐阅读