9

以下两个依赖项有什么区别?我真的需要第一个来制作消费者或生产者应用程序吗?

<dependencies>
    <dependency>
        <groupId>org.apache.kafka</groupId>
        <artifactId>kafka_2.9.2</artifactId>
        <version>0.8.2.1</version>
    </dependency>
    <dependency>
        <groupId>org.apache.kafka</groupId>
        <artifactId>kafka-clients</artifactId>
        <version>0.8.2.1</version>
    </dependency>
</dependencies>

我的 Producer 只适用于第一个,但消费者需要第二个。

我曾认为“kafka-clients”工件适用于生产者和消费者。但看起来“kafka.consumer.Consumer”来自另一个依赖项。为什么有区别?

另外,为什么第一个工件命名为kafka_2.9.2?即为什么名称中有版本标识符?

4

1 回答 1

9

如果你想使用最新的生产者和消费者 API,那么正确的 Maven 坐标是:

<dependency>
    <groupId>org.apache.kafka</groupId>
    <artifactId>kafka-clients</artifactId>
    <version>0.9.0.0</version>
</dependency>

有关更多信息,请参阅API 文档

于 2016-02-17T11:49:31.193 回答