0

我正在使用一个使用 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.
4

3 回答 3

1

例如,您可以将级别日志更改为 ERROR 以限制您拥有的日志量。

通常日志级别位于 log4j.properties 文件中。

前任:

# Root logger option
log4j.rootLogger=ERROR
于 2013-04-07T15:02:50.600 回答
0

刚刚意识到在终端中运行时它工作正常(而不是在 Eclipse 中运行)。猜测这意味着它找不到您的答案中提到的文件。干杯。

于 2013-04-07T15:09:03.360 回答
0

该消息WARN Please initialize the log4j system properly意味着(如上所述)log4j 未正确初始化,因为您的应用程序lo4j.properties在运行时找不到该文件。

您可以在此处获取此文件的基本版本:log4j 示例配置文件(属性文件)

把它放在你的类路径中。完成此操作后,您将能够根据需要配置日志记录级别。例如,要关闭所有消息(并仅保留实际的错误消息),lo4j.properties您可以在文件中将根记录器级别设置为错误,如TheEwook 所述

如果您仍然有问题,那么您应该检查您的构建过程,但具体检查取决于您用于编译的工具。例如,如果您使用 Eclipse,通常lo4j.properties应该位于该resources目录中,该目录应该设置一个源文件夹。如果您使用 Maven,通常此类文件应位于该src/main/resources目录中。如果您使用 Ant,您可能需要使用 Ant 的任务复制此类文件。

换句话说,无论您的构建过程如何,请确保lo4j.properties在运行时类路径中可见。

于 2016-02-18T11:08:34.127 回答