我需要知道如何在java中初始化和使用Log4j .... 当我尝试使用它时,我收到以下错误
log4j:WARN找不到记录器(主)的追加器。 log4j:WARN请正确初始化log4j系统。
答案 0 :(得分:2)
您可以将log4j.properties
放入src
文件夹,系统会自动检查log4j配置。默认配置可能如下所示。
### Root Logger
log4j.rootLogger=DEBUG, Console
### Console Appender
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d (%t) %-5p %c: %m%n
否则,您可以通过编程方式调用默认配置。
import com.foo.Bar;
// Import log4j classes.
import org.apache.log4j.Logger;
import org.apache.log4j.BasicConfigurator;
public class MyApp {
// Define a static logger variable so that it references the
// Logger instance named "MyApp".
static Logger logger = Logger.getLogger(MyApp.class);
public static void main(String[] args) {
// Set up a simple configuration that logs on the console.
BasicConfigurator.configure();
logger.info("Entering application.");
Bar bar = new Bar();
bar.doIt();
logger.info("Exiting application.");
}
}
取自Apache log4j的short introduction document。在向他们提出减少量之前,你应该先找similiar questions。
考虑切换到SLF4J,这使您可以轻松切换日志记录实施。
答案 1 :(得分:1)
首先,请阅读:http://logging.apache.org/log4j/1.2/manual.html
运行JVM时,缺少以下属性:
-Dlog4j.configuration=mylog4jconfig.xml
但是:你的问题表明你刚开始使用log4j。请注意,它的作者CekiGülcü已经过时了,它为java实现了新的记录器,并建议人们使用它。请参见Logback(http://logback.qos.ch/)和SLF4J
答案 2 :(得分:0)
您需要在类路径中包含log4j.properties文件。