我们在使用Log4j的时候,总是出现:

  1. log4j:WARN No appenders could be found for logger (org.apache.ibatis.logging.LogFactory).
  2. log4j:WARN Please initialize the log4j system properly.

这个问题是因为我们的log4j.properties文件配置不够完整,所以我们给它配置齐了就不会再出现这个问题。 
log4j.properties不完整配置如下:

  1. log4j.rootLogger=DEBUG, stdout
  2. log4j.appender.stdout=org.apache.log4j.ConsoleAppender
  3. log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
  4. log4j.appender.stdout.layout.ConversionPattern=%c{1} - %m%n
  5. log4j.logger.java.sql.PreparedStatement=DEBUG

完整配置如下:

  1. log4j.rootLogger=CONSOLE,FILE
  2. log4j.addivity.org.apache=true
  3. # 应用于控制台
  4. log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
  5. log4j.appender.CONSOLE.Threshold=INFO
  6. log4j.appender.CONSOLE.Target=System.out
  7. log4j.appender.CONSOLE.Encoding=GBK
  8. log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
  9. log4j.appender.CONSOLE.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n
  10. # 每天新建日志
  11. log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender
  12. log4j.appender.A1.File=C:/log4j/log
  13. log4j.appender.A1.Encoding=GBK
  14. log4j.appender.A1.Threshold=DEBUG
  15. log4j.appender.A1.DatePattern='.'yyyy-MM-dd
  16. log4j.appender.A1.layout=org.apache.log4j.PatternLayout
  17. log4j.appender.A1.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L : %m%n
  18. #应用于文件
  19. log4j.appender.FILE=org.apache.log4j.FileAppender
  20. log4j.appender.FILE.File=C:/log4j/file.log
  21. log4j.appender.FILE.Append=false
  22. log4j.appender.FILE.Encoding=GBK
  23. log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
  24. log4j.appender.FILE.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n
  25. # 应用于文件回滚
  26. log4j.appender.ROLLING_FILE=org.apache.log4j.RollingFileAppender
  27. log4j.appender.ROLLING_FILE.Threshold=ERROR
  28. log4j.appender.ROLLING_FILE.File=rolling.log
  29. log4j.appender.ROLLING_FILE.Append=true
  30. log4j.appender.CONSOLE_FILE.Encoding=GBK
  31. log4j.appender.ROLLING_FILE.MaxFileSize=10KB
  32. log4j.appender.ROLLING_FILE.MaxBackupIndex=1
  33. log4j.appender.ROLLING_FILE.layout=org.apache.log4j.PatternLayout
  34. log4j.appender.ROLLING_FILE.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n
  35. #自定义Appender
  36. log4j.appender.im = net.cybercorlin.util.logger.appender.IMAppender
  37. log4j.appender.im.host = mail.cybercorlin.net
  38. log4j.appender.im.username = username
  39. log4j.appender.im.password = password
  40. log4j.appender.im.recipient = yyflyons@163.com
  41. log4j.appender.im.layout=org.apache.log4j.PatternLayout
  42. log4j.appender.im.layout.ConversionPattern =[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n
  43. #应用于socket
  44. log4j.appender.SOCKET=org.apache.log4j.RollingFileAppender
  45. log4j.appender.SOCKET.RemoteHost=localhost
  46. log4j.appender.SOCKET.Port=5001
  47. log4j.appender.SOCKET.LocationInfo=true
  48. # Set up for Log Facter 5
  49. log4j.appender.SOCKET.layout=org.apache.log4j.PatternLayout
  50. log4j.appender.SOCET.layout.ConversionPattern=[start]%d{DATE}[DATE]%n%p[PRIORITY]%n%x[NDC]%n%t[THREAD]%n%c[CATEGORY]%n%m[MESSAGE]%n%n
  51. # Log Factor 5 Appender
  52. log4j.appender.LF5_APPENDER=org.apache.log4j.lf5.LF5Appender
  53. log4j.appender.LF5_APPENDER.MaxNumberOfRecords=2000
  54. # 发送日志给邮件
  55. log4j.appender.MAIL=org.apache.log4j.net.SMTPAppender
  56. log4j.appender.MAIL.Threshold=FATAL
  57. log4j.appender.MAIL.BufferSize=10
  58. log4j.appender.MAIL.From=yyflyons@163.com
  59. log4j.appender.MAIL.SMTPHost=www.wusetu.com
  60. log4j.appender.MAIL.Subject=Log4J Message
  61. log4j.appender.MAIL.To=yyflyons@126.com
  62. log4j.appender.MAIL.layout=org.apache.log4j.PatternLayout
  63. log4j.appender.MAIL.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n

再次运行你的程序,你会发现Log4j的警告消失了。不过发现以前的Log4j控制台信息也没有了,其实只要把上面详细配置的log4j.rootLogger=CONSOLE,FILE改为log4j.rootLogger=DEBUG,CONSOLE,FILE,你就发现,控制台信息又回来了。

    1. log4j.rootLogger=CONSOLE,FILE
    2. #log4j.rootLogger=DEBUG,CONSOLE,FILE
    3. log4j.addivity.org.apache=true

log4j:WARN No appenders could be found for logger 解决方案的更多相关文章

  1. (转)log4j:WARN No appenders could be found for logger 解决方案

    我们在使用Log4j的时候,总是出现: log4j:WARN No appenders could be found for logger (org.apache.ibatis.logging.Log ...

  2. log4j:WARN No appenders could be found for logger

    直接写我的解决办法: 在src下面新建file名为log4j.properties内容如下:# Configure logging for testing: optionally with log f ...

  3. 解决log4j:WARN No appenders could be found for logger (org.springframework.web.context.ContextLoader)警告信息的问题

    spring项目经常在启动tomcat时报如下警告信息: log4j:WARN No appenders could be found for logger (org.springframework. ...

  4. maven:log4j:WARN No appenders could be found for logger (loggerInfo).或者maven build error:org.apache.maven.lifecycle.LifecycleExecutionExceptio

    maven在build构建时,加载资源文件时需要配置资源文件插件: 1,在pom.xml文件中加入 <build> <finalName>${project.build.tar ...

  5. 关于控制台输出 警告 log4j:WARN No appenders could be found for logger

    新建struts2项目时出现警告 log4j:WARN No appenders could be found for logger 于是上网搜查了解决方案 转自:最爱NBA 在src下面新建file ...

  6. log4j:WARN No appenders could be found for logger (org.apache.hadoop.metrics2.lib.MutableMetricsFactory). log4j:WARN Please initialize the log4j system properly. log4j:WARN See http://logging.apache.o

    上面的报错是在本地java调试(windows) hadoop集群 出现的 解决方案: 在resources文件夹下面创建一个文件log4j.properties(这个其实hadoop安装目录下的 e ...

  7. log4j:WARN No appenders could be found for logger (org.springframework.web.context.ContextLoader).

    一.异常描述: log4j:WARN No appenders could be found for logger (org.springframework.web.context.ContextLo ...

  8. log4j:WARN No appenders could be found for logger 解决办法

    转自:https://blog.csdn.net/chw0629/article/details/80567936 使用log4j时不起作用,每次执行完出现以下提示: log4j:WARN No ap ...

  9. log4j:WARN No appenders could be found for logger (org.springframework.core.env.StandardEnvironment)的解决

    报错:log4j:WARN No appenders could be found for logger (org.springframework.core.env.StandardEnvironme ...

随机推荐

  1. hdoj:2051

    #include <iostream> #include <string> #include <vector> #include <algorithm> ...

  2. HDFS基础

    1. HDFS Shell基础 [root@master hadoop]# hadoop fsUsage: hadoop fs [generic options] [-appendToFile < ...

  3. Linux使用命令修改默认启动为图形或字符界面

    因为要在Linux系统上装NVIDIA显卡驱动,默认重启必须是字符界面,因此把这块所需命令记录下来. 1,先查看当前系统默认启动的界面 systemctl get-default 2,修改默认启动界面 ...

  4. 3 ansible-playbook 条件语句-外部变量使用

    外部变量指的是从playbook文件之外获取的数值 lookups file file是我们经常使用的一种lookups的方式,它的原理就是使用python的codecs.open打开文件然后把结果返 ...

  5. Jquery EasyUI Combotree和 EasyUI tree展开所有父节点和获取完整路径

    Jquery EasyUI Combotree展开所有父节点 Jquery EasyUI Combotree获取树完整路径 Jquery EasyUI tree展开所有父节点 Jquery EasyU ...

  6. 【netcore基础】ubuntu 16.04 搭建.net core 2.1 linux 运行环境 nginx反向代理 supervisor配置自启动

    今天来整理下 netcore 在 linux(ubuntu) 上的运行环境搭建 对应版本 ubuntu 16.04 .net core 2.1 nginx version: nginx/1.10.3 ...

  7. Javascript 运行上下文和作用域链

    一.作用域Scope和上下文Context 在javascript中,作用域scope和上下文context是两个不同的概念.每个函数调用都会伴随着scope和context,从本质上来说,scope ...

  8. 【消灭代办】第5周 - null拷贝,input自适应,进度条加载,颜色随机值

    2018.12.10 代办一:javascript中js怎么拷贝null的值 null属于简单类型的数值,直接进行拷贝即可: 2018.12.11 代办二:怎么让input自适应宽度? 这样是写下代办 ...

  9. 【CF461E】Appleman and a Game 倍增floyd

    [CF461E]Appleman and a Game 题意:你有一个字符串t(由A,B,C,D组成),你还需要构造一个长度为n的字符串s.你的对手需要用t的子串来拼出s,具体来说就是每次找一个t的子 ...

  10. Xcode - 因为证书问题经常报的那些错

    1.确认下证书是不是开发证书,如果是发布证书就会出现这样的提示. 2.证书失效了,去开发者中心重新生成一个. 3.包标识符不与描述文件包含的包标识符不一致,按照它的提示换一下就好了,最好不要点 Fix ...