汇编Kafka Avro Serializer,服务器项目代码依赖? VerifiableProperties?

时间:2016-12-29 23:11:07

标签: java apache-kafka avro confluent

如果我使用Maven依赖(SBT格式):

"io.confluent" % "kafka-avro-serializer" % "3.1.1"

我会一直收到警告:

[warn] Class kafka.utils.VerifiableProperties not found - continuing with a stub.

如果我编写调用AbstractKafkaAvroDeserializer::deserializerConfig(Map<String, ?> props)的代码,我会收到编译器错误,因为这会因AbstractKafkaAvroDeserializer::deserializerConfig(VerifiableProperties props)而过载,即使我没有使用第二个版本,我仍然会遇到编译错误

kafka-avro-serializer项目使用&#34;提供&#34;来声明对核心Kafka服务器库的Maven依赖性。范围:

    <dependency>
        <groupId>org.apache.kafka</groupId>
        <artifactId>kafka_${kafka.scala.version}</artifactId>
        <version>${kafka.version}</version>
        <scope>provided</scope>
    </dependency>

我可以通过添加Maven依赖项(SBT表示法)来修复编译问题,包括警告和错误:

  "org.apache.kafka" %% "kafka" % "0.10.1.1" % "provided",

这似乎是kafka-avro-serializer项目中的一个错误。即使提供了范围,该项目也不应该依赖于Kafka服务器代码。我正在编写一个独立运行的Kafka Streams应用程序,并希望使用Avro编码的消息。对于Kafka服务器代码库,此流应用程序不应具有依赖关系,即使提供范围也是如此。

0 个答案:

没有答案