How to turn off log4j warnings?

2019-01-26 05:14发布

I'm running a Java app that depends on a few libraries (Axis2) which use log4j. I don't use log4j and don't have any configuration file. I'd like to just completely disable log4j and squelch any and all warnings that it spits out. Right now, when I run my app, when I call one of the library's methods, I see:

log4j:WARN No appenders could be found for logger 
(org.apache.axis2.deployment.FileSystemConfigurator).
log4j:WARN Please initialize the log4j system properly.

Is there some static log4j disable method I can call? I tried Logger.getRootLogger().removeAllAppenders(); and this did not work (I still see the warnings).

标签: java log4j
3条回答
爷的心禁止访问
2楼-- · 2019-01-26 05:46

Make sure you import org.apache.log4j.Level, not the java.util.logging.Level, otherwise you get an error saying "The method setLevel(Level) in the type Category is not applicable for the arguments (Level)"

查看更多
放我归山
3楼-- · 2019-01-26 05:52

The Apache libraries are horribly user-unfriendly. If I wanted logging, I would have turned it on myself. To turn the logging off:

  1. Add log4j-1.2.xxx.jar to your CLASSPATH.
  2. Then add the following to your Java code before the logging starts:

    org.apache.log4j.Logger.getRootLogger().setLevel(org.apache.log4j.Level.OFF);

查看更多
劫难
4楼-- · 2019-01-26 05:58

You could try

Logger.getRootLogger().setLevel(Level.OFF);
查看更多
登录 后发表回答