我使用的是Spring 4.X.X并使用以下设置来配置Log4j。现在我将它升级到Spring 5.0.2,其中Log4jConfigurer
类已被删除。我怎么能在Spring 5.0.2中做到这一点?
<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>classpath:log4j.properties</value>
</list>
</property>
</bean>
答案 0 :(得分:4)
非默认Log4j初始化需要Log4JConfigurer
,例如如果使用自定义配置文件名称/位置,但您的配置文件位于默认位置:classpath:log4j.properties
,那么您只需删除Log4jConfigurer
声明,Spring就会自动发现您的log4j.properties
。< / p>
这里有一个可能的警告; Spring 5使用Log4j v2(遵循Apache的log4j 1.x的EOL声明),所以只要你使用Log4j v2,那么Spring 5会自动检测它和你的log4j.properties
文件而不需要声明一个Log4JConfigurer
。如果您当前没有使用Log4j v2,那么我认为您需要升级,因为Spring 5不支持使用Log4j v1.x.