Apache Kafka 0.8.2.1 - 生产者 (Java API) 不写入消息

Apache Kafka 0.8.2.1 - Producer (Java API) does not write messages

我在 CentOS 环境中设置了 Apache Kafka 0.8.2.1,创建了一个主题并通过命令行生产者/消费者发送/接收了一些虚拟消息。

正如您在屏幕截图中所见,效果很好。不,我正在写一个自定义制作人来从 Java 获取我的消息到主题。

package de.jofre.kafka;

import java.util.Properties;

import org.apache.kafka.clients.producer.KafkaProducer;
import org.apache.kafka.clients.producer.ProducerRecord;
import org.apache.kafka.common.serialization.StringSerializer;

public class TestProducer {

    public static void main(String[] args) {

        Properties props = new Properties();
        props.put("bootstrap.servers", "192.168.145.130:9092");
        props.put("key.serializer", StringSerializer.class.getName());
        props.put("value.serializer", StringSerializer.class.getName());

        KafkaProducer<String, String> prod = new KafkaProducer<String, String>(props);

        ProducerRecord<String, String> record = new ProducerRecord<String, String>("test", "Kafka is great");
        prod.send(record);

        prod.close();
    }
}

调用显示的 main 不会产生关于 Kafka 主题的消息,也不会打印任何错误消息。

有人知道为什么消息没有到达我的主题吗?

感谢 morganw09dev 我找到了答案。我测试了依赖项 org.apache.kafka kafka_2.11 0.8.2.1org.apache.kafka kafka-clients 0.8.2.1.没有一个有效。

实际起作用的依赖项是 org.apache.kafka kafka_2.10 0.8.2.1。我认为这是一个错误,因为我下载了 运行 kafka_2.11 二进制文件。