Reputation: 18299
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).
Upvotes: 16
Views: 23438
Reputation: 350
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)"
Upvotes: 1
Reputation: 40979
The Apache libraries are horribly user-unfriendly. If I wanted logging, I would have turned it on myself. To turn the logging off:
Then add the following to your Java code before the logging starts:
org.apache.log4j.Logger.getRootLogger().setLevel(org.apache.log4j.Level.OFF);
Upvotes: 7