如何在 Spring-Boot 1.3.6 和 Java-8 中使用 log4j 2.17.1
How to use log4j 2.17.1 in Spring-Boot 1.3.6 with Java-8
我的Java-8项目是使用spring-boot 1.3.6版本构建的,默认继承'log4j-core-2.4.1',但现在我想升级log4j-core到2.17 .1 我为此添加了
2.17.1 到我项目的 pom.xml 文件中。构建运行正常,但错误显示:-
*ERROR org.springframework.boot.SpringApplication - Application startup failed
java.lang.NoSuchMethodError: org.apache.logging.log4j.core.config.ConfigurationFactory.getConfiguration(Lorg/apache/logging/log4j/core/config/ConfigurationSource;)Lorg/apache/logging/log4j/core/config/Configuration;*
简答:你不能。
log4j-core
中的重大更改(参见 LOG4J2-1547)使版本 2.7.0 及更高版本与 Spring Boot 1.3.x 不兼容。您可以:
- 升级到 Spring Boot 1.5.x 或更高版本,
- 降级到 Log4j 2.3.2(包括最新的 security patches):
<properties>
<log4j2.version>2.3.2</log4j2.version>
</properties>
我的Java-8项目是使用spring-boot 1.3.6版本构建的,默认继承'log4j-core-2.4.1',但现在我想升级log4j-core到2.17 .1 我为此添加了
*ERROR org.springframework.boot.SpringApplication - Application startup failed
java.lang.NoSuchMethodError: org.apache.logging.log4j.core.config.ConfigurationFactory.getConfiguration(Lorg/apache/logging/log4j/core/config/ConfigurationSource;)Lorg/apache/logging/log4j/core/config/Configuration;*
简答:你不能。
log4j-core
中的重大更改(参见 LOG4J2-1547)使版本 2.7.0 及更高版本与 Spring Boot 1.3.x 不兼容。您可以:
- 升级到 Spring Boot 1.5.x 或更高版本,
- 降级到 Log4j 2.3.2(包括最新的 security patches):
<properties> <log4j2.version>2.3.2</log4j2.version> </properties>