我想创造一个 KafkaConsumer
以下是 Groovy
代码:
Properties props = new Properties()
props.put('bootstrap.servers', "$SERVER_ADDRESS:$port")
props.put('key.deserializer', StringDeserializer.name,)
props.put('value.deserializer', StringDeserializer.name)
return new KafkaConsumer<String, String>(props)
当我执行它时,我得到以下错误:
org.apache.kafka.common.config.configexception:无效值localhost:9092 for configuration bootstrap.servers:应为逗号分隔的列表。
我的代码基本上与从这里创建消费者的示例相匹配
为什么我的版本不起作用?
2条答案
按热度按时间c9qzyr3d1#
在使用kafkaconsumer或kafkaproducer的版本0.10.0中,它需要一个字符串数组。你在传递一根线。
uqjltbpv2#
在本例中,props对象希望其值的类型为object,而不仅仅是string。因此,当
"$SERVER_ADDRESS:$port"
作为属性添加,它不会强制为字符串,而是存储为gstringimpl。在创建kafkaconsumer之前所做的类型检查知道如何处理字符串属性值,但不知道如何处理gstringimpl并抛出错误。
将线路改为此工程: