kafka-console-producer.sh错误:无法找到或加载主类kafka.tools.ConsoleProducer

时间:2016-05-03 02:11:23

标签: apache-kafka kafka-producer-api

刚刚安装了spotify / kafka的Docker镜像。 sudo docker ps:

82c411a52a38        spotify/kafka                    "supervisord -n"         26 minutes ago      Up 26 minutes       0.0.0.0:2181->2181/tcp, 0.0.0.0:9092->9092/tcp

另外,单独下载了kafka二进制文件,因此我可以使用kafka-console-producer.sh来测试安装,按照:https://hub.docker.com/r/spotify/kafka/

我有以下ENV变量集:

KAFKA =事件ORA-dev的:9092 ZOOKEEPER =事件ORA-dev的:2181

当我运行命令./kafka-console-producer.sh --broker-list $KAFKA --topic test

我收到此错误:

Error: Could not find or load main class kafka.tools.ConsoleProducer

假设kafka.tools.ConsoleProducer是一个java类,由kafka-console-producer.sh shell脚本调用 - 我应该在哪里寻找这个java类?

2 个答案:

答案 0 :(得分:1)

我使用kafka 10遇到了同样的问题: 所以@Matthias J. Sax说我错过了一些罐子, 所以我发现当下载kafka_2.10-0.10.2.1时我在lib中丢失了jar 当我下载kafka_2.12-0.10.2.1时,我得到了完整的lib文件夹。

我在底线做了如下:

wget http://www-us.apache.org/dist/kafka/0.10.2.1/kafka_2.12-0.10.2.1.tgz

tar -xvf kafka_2.12-0.10.2.1.tgz

./ kafka_2.12-0.10.2.1 / bin / kafka-console-producer.sh --broker-list $ KAFKA - topic test

答案 1 :(得分:0)

如果您从项目网站下载Kafka并将其解压缩,则会有包含所有lib个文件的子文件夹jar

kafka-console-producer.sh kafka-tools-0.9.0.1.jar需要kafka.tools.ConsoleProducer(或不同版本 - 不确定您使用的是什么)。

如果您从顶级文件夹运行bin/kafka-console-producer.sh,这应该是开箱即用的。