我下载了 confluent-2.0.0-2.10.5.tar.gz,因为我想要 scala 2.10 包
但 /share/java/schema-registry 中的 kafka jar 仍然是 kafka_2.11-0.9.0.0-cp1.jar
无论如何我可以获得一个干净的 2.10 scala confluent 包
我下载了 confluent-2.0.0-2.10.5.tar.gz,因为我想要 scala 2.10 包
但 /share/java/schema-registry 中的 kafka jar 仍然是 kafka_2.11-0.9.0.0-cp1.jar
无论如何我可以获得一个干净的 2.10 scala confluent 包
2.10 指的是 Kafka 子包的版本,但其他子包可能使用不同的版本。
tar.gz 包使用 2.11 版本,其中不同的子包需要访问具有 Scala 依赖项的核心 Kafka jar。(实际上,他们所依赖的版本实际上是 Kafka 支持的任何 Scala 版本,并且被认为是上游最稳定和得到良好支持的版本)。这是必要的,因为 Scala 库在不同 Scala 版本之间不一定是二进制兼容的,这意味着不这样做将需要使用 Kafka 库的所有服务的多个版本,特别是在 Debian 和基于 RPM 的发行版等平台上,即我们需要一个 schema-registry-2.10 和 schema-registry-2.11。相反,我们将整个 Kafka 库提供给依赖它的服务。
请注意,/share/java/kafka 下的文件仅使用 Scala 2.10,如果您需要引入客户端,可以安全地将其添加到类路径中。将 2.10 或 2.11 用于任何其他服务应该无关紧要,因为它们就是:您执行的服务。您可能需要放在类路径中的任何库(例如序列化程序)仅依赖于 Kafka 中的纯 Java 库,因此可以安全地与使用任何 Scala 版本编译的 Kafka 库一起使用。