java – Log4j似乎不适用于Spring Boot

前端之家收集整理的这篇文章主要介绍了java – Log4j似乎不适用于Spring Boot前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我试图将Spring和Maven添加到我现有的项目之一,我发现无论我如何配置,日志记录似乎都不受我的控制.

我尝试将log4j.properties放在src / main / java和src / main / resources中(实际上我不知道放在哪里).

但是当我使用Log4j进行日志记录时,日志只显示在控制台中,尽管我将其配置为文件.

我的log4j.properties就像:

log4j.rootLogger=DEBUG,A1 
log4j.appender.A1=org.apache.log4j.FileAppender
log4j.appender.A1.encoding=utf-8
log4j.appender.A1.File=E:\Programminglog\debug.log 
log4j.appender.A1.Threshold = DEBUG 
log4j.appender.A1.Append=true
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ]  %m%n

我不确定我是否遗漏了某些东西或Spring覆盖了一些设置,因为我是Maven和Spring的新手.

PS:在我在pom.xml中添加Log4j的依赖项之前,虽然我使用org.apache.log4j.Logger但没有编译错误

这就是我的application.java的样子:

@Configuration
@EnableAutoConfiguration
@ComponentScan({"hello","wodinow.weixin.jaskey"})
public class Application extends WebMvcConfigurerAdapter  {

    public static void main(String[] args) {
        ApplicationContext ctx = SpringApplication.run(Application.class,args);

        System.out.println("Let's inspect the beans provided by Spring Boot:");

        String[] beanNames = ctx.getBeanDefinitionNames();
        Arrays.sort(beanNames);
        for (String beanName : beanNames) {
            System.out.println(beanName);
        }

        LogUtil.info("Application Boots!");// here this line does not show in the file
    }

    @Bean
    public CommandService commandService(){
        return CommandService.getInstance();
    }
}
最佳答案
如果您使用带有spring-boot的log4j,则必须在pom.xml中添加“exclusions”依赖项

 

请关注此.它会解决你的问题.

http://www.atechref.com/blog/maven/spring-boot-using-log4j-logging/

猜你在找的Spring相关文章