springboot使用XML方式整合log4j,log4j的Spring Boot Lookup功能失效, 无法从yml取值的问题

背景

springboot整合log4j时,希望从application.yml中获取到项目名,在网上搜了一圈发现没有太好的方式,根据经验,这种需求官方肯定考虑到了,于是通过从官网
https://logging.apache.org/log4j/2.x/manual/lookups.html得知可以通过以下方式实现:springboot使用XML方式整合log4j,log4j的Spring Boot Lookup功能失效, 无法从yml取值的问题_第1张图片

问题

坑爹的是官网并没有详细说明这个功能的前置条件,集成到项目后发现没有生效,经查阅得知Spring Boot Lookup需要log4j的版本在2.14.0及以上,原springboot提供的整合包版本过低,不支持此功能,需要将以下依赖注释掉





同时这个依赖下边的jar包,我们可以手动引入,作者引入的是2.15.0
springboot使用XML方式整合log4j,log4j的Spring Boot Lookup功能失效, 无法从yml取值的问题_第2张图片
除了升级版本外,还要额外引入提供Spring Boot Lookup功能的jar包


    org.apache.logging.log4j
    log4j-spring-boot
    2.15.0

你可能感兴趣的:(java,spring,boot,log4j)