有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java汇合Kafka Avro序列化程序,服务器项目代码依赖?可验证属性?

如果我使用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项目声明了对核心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项目中的一个bug。该项目不应该依赖卡夫卡服务器代码,即使提供了范围。我正在编写一个独立运行的Kafka Streams应用程序,希望使用Avro编码的消息。这个streams应用程序不应该对Kafka服务器代码库有依赖关系,即使提供了范围


共 (0) 个答案