Apache kafka org.apache.kafka.common.config.ConfigException:缺少必需的配置;bootstrap.servers“;它没有默认值
在Eclipse中运行producer类时出现以下错误: org.apache.kafka.common.config.ConfigException:缺少没有默认值的必需配置“bootstrap.servers” 这是我的制作人课程:Apache kafka org.apache.kafka.common.config.ConfigException:缺少必需的配置;bootstrap.servers“;它没有默认值,apache-kafka,kafka-producer-api,Apache Kafka,Kafka Producer Api,在Eclipse中运行producer类时出现以下错误: org.apache.kafka.common.config.ConfigException:缺少没有默认值的必需配置“bootstrap.servers” 这是我的制作人课程: public class SimpleProducer { public static void main(String[] args) throws Exception { try { String topicName = "m
public class SimpleProducer {
public static void main(String[] args) throws Exception {
try {
String topicName = "mytopic";
String key = "key1";
String value = "Value-1";
Properties prop = new Properties();
prop.put("bootstrap.server","localhost:9092");
prop.put("key.serializer","org.apache.kafka.common.serialization.StringSerializer");
prop.put("value.serializer","org.apache.kafka.cpmmon.serialization.StringSerializer");
Producer<String, String> producer = new KafkaProducer<>(prop);
ProducerRecord<String, String> record = new ProducerRecord<>(topicName,key,value);
producer.send(record);
producer.close();
System.out.println("SimpleProducer Completed.");
}
catch(Exception e) {
e.printStackTrace();
}
}
}
公共类SimpleProducer{
公共静态void main(字符串[]args)引发异常{
试一试{
字符串topicName=“mytopic”;
字符串key=“key1”;
String value=“value-1”;
Properties prop=新属性();
prop.put(“bootstrap.server”,“localhost:9092”);
put(“key.serializer”、“org.apache.kafka.common.serialization.StringSerializer”);
put(“value.serializer”、“org.apache.kafka.cpmmon.serialization.StringSerializer”);
制作人=新卡夫卡制作人(道具);
ProducerRecord记录=新的ProducerRecord(主题名称、键、值);
制作人。发送(记录);
producer.close();
System.out.println(“SimpleProducer完成”);
}
捕获(例外e){
e、 printStackTrace();
}
}
}
有关于如何修复它的提示吗?只需更改
prop.put(“bootstrap.server”,“localhost:9092”)代码>
到
prop.put(“bootstrap.servers”,“localhost:9092”)代码>
在你的代码里
prop.put("value.serializer",
"org.apache.kafka.cpmmon.serialization.StringSerializer");
常见的拼写不正确,正确的软件包是
org.apache.kafka.common.serialization.StringSerializer
使用以下内容,避免使用硬编码值
为了
使用
ProducerConfig将在org.apache.kafka.clients.producer包中找到,这里有两个观察结果
1.
替换
prop.put("bootstrap.server","localhost:9092");
org.apache.kafka.cpmmon.serialization.StringSerializer
借
bootstrap.server--不正确
bootstrap.servers--正确
2.
替换
prop.put("bootstrap.server","localhost:9092");
org.apache.kafka.cpmmon.serialization.StringSerializer
借
您拼错了属性键“bootstrap.servers”
。为了避免将来出现这种错误,请改用常量ProducerConfig.BOOTSTRAP\u SERVERS\u CONFIG
。为什么你从来都不接受任何问题的答案,OP?我试过这个例子,但有一个输入错误:cpmmon=>common。我无法编辑这篇文章,因为它少于8个字符。
org.apache.kafka.cpmmon.serialization.StringSerializer
org.apache.kafka.common.serialization.StringSerializer