What is different about the following maven dependency for Kafka 0.9 client API?
Part 1:
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka_2.10</artifactId>
<version>0.9.0.0</version>
<exclusions>
<exclusion>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>2.10.0</version>
</dependency>
Part 2:
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka-clients</artifactId>
<version>0.9.0.0</version>
</dependency>
The kafka-clients
was introduced only recently and is meant to hold the new clients, which are pure Java implementations and cleanly isolated from the server code. The old clients (including what we call the "old" consumer since a new consumer is being developed, but is really the "current" consumer) are in the core module (kafka_<scala_version>
).
source
Kafka_2.10 dependency means that the current Kafka is implemented in Scala 2.10 which is the programming language Kafka is written in. kafka-clients 0.9.0.0 means that the client can talk to Kafka of version 0.9.0.0.
To sum it up, 2.10 is the programming language Scala's version # while 0.9.0.0 is the streaming platform Kafka's version #.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With