以下の2つの依存関係の違いは何ですか?コンシューマーアプリまたはプロデューサーアプリを作成するには、本当に最初のアプリが必要ですか?
<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>
私のプロデューサーは最初のものだけで問題なく動作しますが、コンシューマーは2番目のものを必要としています。
「kafka-clients」アーティファクトは、プロデューサーとコンシューマーの両方で機能すると思っていました。しかし、「kafka.consumer.Consumer」は他の依存関係から来ているように見えます。なぜ違いがあるのですか?
また、最初のアーティファクトがkafka_2.9.2という名前になっているのはなぜですか?つまり、名前にバージョン識別子が含まれているのはなぜですか?
最新のプロデューサーおよびコンシューマーAPIを使用する場合、正しいMaven座標は次のとおりです。
<dependency>
<groupId>org.Apache.kafka</groupId>
<artifactId>kafka-clients</artifactId>
<version>0.9.0.0</version>
</dependency>
詳細については、 APIドキュメント を参照してください。