【问题标题】:Spring boot 1.4 externalize log4j xmlSpring Boot 1.4 外部化 log4j xml
【发布时间】:2017-01-17 21:31:15
【问题描述】:
在 spring boot 1.4 迁移之前,我能够使用 application.properties 配置 [logging.config=conf/log4j.xml] 将 log4j.xml 保留在 jar 之外。配置文件夹和应用程序 jar 位于同一文件夹下。
在 spring boot 1.4 迁移之后,log4j.xml 没有被选中,它会抛出 filenotfound 异常。 spring 1.4 加载配置和日志 xml 是否与以前的版本不同?
【问题讨论】:
标签:
maven
spring-boot
log4j
【解决方案1】:
spring-boot 可能正在尝试使用其默认记录器logback。您需要排除logback 或spring-boot-starter-logging。
how-to-logging 上的 Spring 文档:
Spring Boot 支持 Log4j 2 进行日志记录配置,如果它位于
类路径。如果您使用启动器来组装依赖项
这意味着您必须排除 Logback 然后包含 log4j 2
而是。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j2</artifactId>
</dependency>