出现log4j:WARN No appenders could be found for logger….如何解决(普通Web项目与maven项目分开讨论)

导读:本篇文章讲解 出现log4j:WARN No appenders could be found for logger….如何解决(普通Web项目与maven项目分开讨论),希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

在这里插入图片描述
我们使用的是IntelliJ IDEA,本篇文章分为两大部分,第一部分为普通Java Web项目下怎么解决,第二部分为使用maven工程下的web项目怎么解决此异常,达到日志信息正常出现.读者根据自身情况移至相应的部分.

第一部分:普通Java Web项目

有两种情况:
1.情况:没有log4j.properties配置文件
解决方法:在src目录下创建log4j.properties文件,并把下面的内容复制进去,保存后,如果之前运行过该程序,应该会有out的目录(如下图,一个普通java项目编译之后会产生bin目录用来存储编译好的 .class 文件,而IntelliJ IDEA的目录名称默认为out,同样也是在项目的根路径下. ),确保里面有你得配置文件,如果没有可手动复制进去或者删除out目录重新运行程序,会自动重新创建out目录,确保配置文件在其中,查看控制台日志信息是否正常出现.

### direct log messages to stdout ###
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.err
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

### direct messages to file mylog.log ###
log4j.appender.file=org.apache.log4j.FileAppender
log4j.appender.file.File=c\:mylog.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

### set log levels - for more verbose logging change 'info' to 'debug' ###
# error warn info debug trace
log4j.rootLogger= info, stdout

在这里插入图片描述
在这里插入图片描述
2.情况:我有log4j.properties配置文件,但是还是出现异常信息,没有正常日志信息
解决方法:首先检查log4j.properties是否在src目录下,确保out目录里面有你的配置文件,如果没有可手动复制进去或者删除out目录重新运行程序,会自动重新创建out目录,确保配置文件在其中,查看控制台日志信息是否正常出现.
在这里插入图片描述
在这里插入图片描述

第二部分:maven工程下的web项目

有两种情况:
1.情况:没有log4j.properties配置文件
解决办法:按照第一部分第一种情况创建好log4j.properties配置文件,不同的是该文件放在src–>main–>resources资源目录下
在这里插入图片描述
在maven工程下的pom.xml配置文件中的build标签内添加如下一段代码,这样在启动项目时会把这个resources目录下的log4j.properties文件加载进target目录下

<resources>
       <resource>
        <directory>src/main/resources</directory>
        <includes>
            <include>log4j.properties</include>
        </includes>
        <filtering>true</filtering>
    </resource>
    <!--<resource>
        <directory>src/main/resources</directory>
        <includes>
            <include>**/*.xml</include>
            <include>**/*.properties</include>
        </includes>
    </resource>-->
</resources>

然后clean一下
在这里插入图片描述
启动maven项目,查看日志信息是否正常
如果正常可以看到target目录下的classes目录下会有log4j.properties配置文件
在这里插入图片描述
2.情况:我有log4j.properties配置文件,但是还是出现异常信息,没有正常日志信息
解决办法:参照第一种情况

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/16692.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!