Kafka Maven依赖

nik*_*kel 8 maven apache-kafka kafka-consumer-api kafka-producer-api

以下两个依赖项之间有什么区别?我是否真的需要第一个制作消费者或制作人应用程序?

<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>
Run Code Online (Sandbox Code Playgroud)

我的制作人只与第一个一起工作正常,但消费者需要第二个.

我原以为"kafka-clients"工件对生产者和消费者都有效.但看起来像"kafka.consumer.Consumer"来自其他依赖.为什么会有区别?

另外,为什么第一个神器命名为kafka_2.9.2?即为什么名称中的版本标识符?

Mar*_*tin 8

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

<dependency>
    <groupId>org.apache.kafka</groupId>
    <artifactId>kafka-clients</artifactId>
    <version>0.9.0.0</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

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