我正在使用一个库,该库使用log4j输出到控制台。但是,使用库的方法会被多次调用,这意味着控制台总是满的。我需要一种方法来停止log4j输出到控制台。
我也看到过类似的问题,但不知道该怎么做。
我认为(如果我理解的话)在log4j中有一个方法或变量是我必须引用的,但我知道具体是什么。另外,要导入哪些内容才能访问log4j?
非常感谢您的帮助!
刚刚意识到:输出看起来可以通过修复某些东西来停止?请查看下面的内容。
输出:
log4j:WARN No appenders could be found for logger (eu.medsea.mimeutil.TextMimeDetector).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.发布于 2013-04-07 23:02:51
例如,您可以将日志级别更改为ERROR,以限制您拥有的日志数量。
通常,日志级别位于log4j.properties文件中。
例如:
# Root logger option
log4j.rootLogger=ERROR发布于 2013-04-07 23:09:03
我刚刚意识到在终端中运行时,它工作得很好(而不是在Eclipse中运行)。猜测这意味着它无法找到您的答案中提到的文件。干杯。
发布于 2016-02-18 19:08:34
消息WARN Please initialize the log4j system properly意味着(如上所述) log4j没有正确初始化,因为应用程序在运行时找不到lo4j.properties文件。
您可以在此处获得此文件的基本版本:log4j sample configuration file (properties file)
只需将其放入您的类路径中。完成此操作后,您将能够根据需要配置日志记录级别。例如,要关闭所有消息(并仅保留实际的错误消息),可以按照TheEwook的解释,在lo4j.properties文件中将根记录器级别设置为error。
如果你仍然有这个问题,那么你应该检查你的构建过程,但是具体的检查取决于你用来编译的工具。例如,如果您使用的是Eclipse,那么lo4j.properties通常应该位于resources目录中,该目录应该设置为源文件夹。如果您使用Maven,通常这样的文件应该位于src/main/resources目录中。如果您使用Ant,您可能需要使用Ant的任务来复制这样的文件。
换句话说,无论您的构建过程如何,都要确保lo4j.properties在运行时类路径中可见。
https://stackoverflow.com/questions/15863798
复制相似问题