Apache kafka kafka avro控制台生成器org.apache.avro.SchemaParseException:无法解析<;空>;模式
我试图通过在confluent schema registry中注册架构来发送avro消息:Apache kafka kafka avro控制台生成器org.apache.avro.SchemaParseException:无法解析<;空>;模式,apache-kafka,avro,confluent-platform,kafka-producer-api,confluent-schema-registry,Apache Kafka,Avro,Confluent Platform,Kafka Producer Api,Confluent Schema Registry,我试图通过在confluent schema registry中注册架构来发送avro消息: [appuser@schema-registry bin]$ ./kafka-avro-console-producer --broker-list localhost:9092 --topic t.lower.case --property schema.registry.url='localhost:8081' --property value.schema= '\ { > "n
[appuser@schema-registry bin]$ ./kafka-avro-console-producer --broker-list localhost:9092 --topic t.lower.case --property schema.registry.url='localhost:8081' --property value.schema= '\
{
> "namespace": "com.thebigscale",
> "type": "record",
> "name": "Customer",
> "fields": [
> {"name": "first_name", "type":"string", "doc": "First name of the person"},
> {"name": "last_name", "type":"string", "doc": "Last name of the person"},
> {"name": "age", "type":"int", "doc": ""},
> {"name": "height", "type":"double", "doc": ""},
> {"name": "weight", "type":"double", "doc": ""},
> {"name": "automated_emails", "type":"boolean", "default":true, "doc": ""}
> ]
> }'
我得到以下错误:
[2020-12-13 19:31:28,867] INFO Registered kafka:type=kafka.Log4jController MBean (kafka.utils.Log4jControllerRegistration$)
[2020-12-13 19:31:29,725] ERROR Could not parse Avro schema (io.confluent.kafka.schemaregistry.avro.AvroSchemaProvider)
org.apache.avro.SchemaParseException: Cannot parse <null> schema
at org.apache.avro.Schema.parse(Schema.java:1595)
at org.apache.avro.Schema$Parser.parse(Schema.java:1394)
at org.apache.avro.Schema$Parser.parse(Schema.java:1382)
at io.confluent.kafka.schemaregistry.avro.AvroSchema.<init>(AvroSchema.java:63)
at io.confluent.kafka.schemaregistry.avro.AvroSchemaProvider.parseSchema(AvroSchemaProvider.java:41)
at io.confluent.kafka.formatter.SchemaMessageReader.parseSchema(SchemaMessageReader.java:160)
at io.confluent.kafka.formatter.SchemaMessageReader.getSchema(SchemaMessageReader.java:172)
at io.confluent.kafka.formatter.SchemaMessageReader.init(SchemaMessageReader.java:144)
at kafka.tools.ConsoleProducer$.main(ConsoleProducer.scala:43)
at kafka.tools.ConsoleProducer.main(ConsoleProducer.scala)
java.util.NoSuchElementException: No value present
at java.base/java.util.Optional.get(Optional.java:148)
at io.confluent.kafka.formatter.SchemaMessageReader.parseSchema(SchemaMessageReader.java:160)
at io.confluent.kafka.formatter.SchemaMessageReader.getSchema(SchemaMessageReader.java:172)
at io.confluent.kafka.formatter.SchemaMessageReader.init(SchemaMessageReader.java:144)
at kafka.tools.ConsoleProducer$.main(ConsoleProducer.scala:43)
at kafka.tools.ConsoleProducer.main(ConsoleProducer.scala)
[appuser@schema-registry bin]$
[2020-12-13 19:31:28867]信息注册卡夫卡:type=kafka.log4jcontrollermbean(kafka.utils.Log4jControllerRegistration$)
[2020-12-13 19:31:29725]错误无法分析Avro架构(io.confluent.kafka.schemaregistry.Avro.AvroSchemaProvider)
org.apache.avro.SchemaParseException:无法分析架构
位于org.apache.avro.Schema.parse(Schema.java:1595)
位于org.apache.avro.Schema$Parser.parse(Schema.java:1394)
位于org.apache.avro.Schema$Parser.parse(Schema.java:1382)
在io.confluent.kafka.schemaregistry.avro.AvroSchema.(AvroSchema.java:63)
在io.confluent.kafka.schemaregistry.avro.AvroSchemaProvider.parseSchema(AvroSchemaProvider.java:41)
在io.confluent.kafka.formatter.SchemaMessageReader.parseSchema(SchemaMessageReader.java:160)
在io.confluent.kafka.formatter.SchemaMessageReader.getSchema(SchemaMessageReader.java:172)
位于io.confluent.kafka.formatter.SchemaMessageReader.init(SchemaMessageReader.java:144)
位于kafka.tools.ConsoleProducer$.main(ConsoleProducer.scala:43)
位于kafka.tools.ConsoleProducer.main(ConsoleProducer.scala)
java.util.NoSuchElementException:不存在值
位于java.base/java.util.Optional.get(Optional.java:148)
在io.confluent.kafka.formatter.SchemaMessageReader.parseSchema(SchemaMessageReader.java:160)
在io.confluent.kafka.formatter.SchemaMessageReader.getSchema(SchemaMessageReader.java:172)
位于io.confluent.kafka.formatter.SchemaMessageReader.init(SchemaMessageReader.java:144)
位于kafka.tools.ConsoleProducer$.main(ConsoleProducer.scala:43)
位于kafka.tools.ConsoleProducer.main(ConsoleProducer.scala)
[appuser@schema-注册箱]$
我能够通过普通的gradle插件生成java对象,所以我不确定我会错在哪里。在
value.schema
之后有一个空格,在value.schema