log4j 警告:找不到记录器的附加程序(org.apache.kafka.clients. Producer.ProducerConfig)

问题描述 投票:0回答:1

我正在编写一段代码,尝试使用 kafka 和 SBT 生成消息。它可以编译,但是当使用 SBT 运行时,出现此错误。

log4j:WARN No appenders could be found for logger (org.apache.kafka.clients.producer.ProducerConfig).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

我上网查看,发现在我的类路径中找不到 log4j.properties。所以我进入文件夹

etc/sbt
并修改文件
sbtconfig.txt
。我在里面添加了这个

-Dlog4j.configuration=file:/home/hduser/kafka_2.11-2.1.0/config/log4j.properties
-Dkafka.logs.dir=/home/hduser/kafka_2.11-2.1.0/logs

我尝试再次运行该任务,但不断收到相同的错误。

如何解决这个问题?

scala apache-kafka sbt log4j
1个回答
0
投票

在这种情况下,您需要在资源文件夹中创建一个 log4j.xml 文件。

<log4j:configuration debug="false">
<!--Console appender -->
<appender name="stdout" class="org.apache.log4j.ConsoleAppender">
    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} %p %m%n"/>
    </layout>
</appender>

<root>
    <level value="DEBUG"/>
    <appender-ref ref="stdout"/>
</root> </log4j:configuration>

在资源文件夹中创建此文件并命名为 log4j.xml。它将解决问题。

© www.soinside.com 2019 - 2024. All rights reserved.