我有一台拥有Java 1.6的服务器。在那里,我需要使用Confluent' KafkaAvroDeserializer
来反序列化avro消息。
问题是:
如果我使用Confluent-1.0(与Java> = 1.6兼容),那么我无法反序列化,因为kafka-avro-serializer-1.0.jar没有{{1} } 方法。它只有KafkaAvroDeserializer
,我无法根据模式注册表URL和byte []消息进行反序列化。
如果我使用Confluent-2.0或更高版本,它会包含所有内容,但它只与java> = 1.7兼容。
在这种情况下我该怎么做?
进行比较:
答案 0 :(得分:0)
Kafka的新解串器接口尚未引入/最终确定,直到Kafka 0.9.0.0对应于Confluent Platform 2.0.0。这也是删除Java 6支持时的发布,所以不幸的是,除非你使用自己的构建来使用Java 6来构建(这也需要大量修补),否则将无法实现这一点。使Java 6兼容的代码。
Java 6已经EOL超过3年了。即使Java 7已经存在EOL一年多了,许多项目也开始放弃对它的支持。最终卡夫卡也需要放弃支持。