首页 > 解决方案 > Spring 5 中的 Log4jConfigurer

问题描述

我已将我的项目从 Spring 4 升级到 Spring 5,并且我正在解决已弃用/删除的类。作为努力的一部分,我注意到 log4jConfigurer 已从 Spring 5 中删除。

我有以下代码:

<bean
    class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
    <property name="targetClass" value="org.springframework.util.Log4jConfigurer"/>
    <property name="targetMethod" value="initLogging"/>
    <property name="arguments">
        <list>
            <value>file:///${logPropertyFile}</value>
        </list>
    </property>
</bean>

我知道很多人都发布了类似的问题,但是当我有 log4j2 配置文件的自定义路径时,我没有看到任何解释。

我知道我们可以将它放在 web.xml 文件中,但我想为子项目加载不同的日志文件配置,而与父项目日志配置无关。因此,Spring 上下文文件是它的最佳位置。

我想知道如何在 Spring-5 中为自定义日志文件解析 Log4jConfigurer。

提前致谢!

标签: springspring-mvclog4j2spring5

解决方案


您可以尝试改用 log4j PropertyConfigurator 吗?

<property name="targetClass" value="org.apache.log4j.PropertyConfigurator"/>
        <property name="targetMethod" value="configure"/>
        <property name="arguments">
            <list>
                <value>${logPropertyFile}</value>
            </list>
</property>

configure(String) 方法由 FileInputStream 支持,其中通常在不使用文件的情况下引用路径:scheme ...


推荐阅读