1

我正在使用带有 Confluent Registry 和 AVRO 的 SmallRye Reactive Messaging 和 Kafka。它工作正常,如本博客中所述https://quarkus.io/blog/kafka-avro/ 但它似乎不适用于与博客相关的源代码的本机编译:https ://github.com/cescoffier/quarkus -kafka-and-avro

我的环境(Avro 1.10.0 和 Confluent Registry)也有同样的问题。您将在此消息的末尾看到日志。

是否计划在本机支持上工作?或者可能是一个必须打开的问题?

备注:使用 Kafka Streams + Avro + Confluent Registry 的 quarkus avro 扩展在本机中运行良好。

谢谢。

[kafka-and-avro-1.0.0-SNAPSHOT-runner:96219] 分析:28 016,32 ms,2,72 GB 错误:应该在运行时初始化的类在图像构建期间被初始化:me.escoffier.quarkus .Movie 要求在运行时初始化该类(来自功能 io.quarkus.runner.AutoFeature.beforeAnalysis)。要查看 me.escoffier.quarkus.Movie 被初始化的原因,请使用 -H:+TraceClassInitialization org.apache.avro.generic.GenericDatumReader 要求在运行时初始化该类(来自功能 io.quarkus.runner.AutoFeature.beforeAnalysis) . 要了解 org.apache.avro.generic.GenericDatumReader 被初始化的原因,请使用 -H:+TraceClassInitialization

com.oracle.svm.core.util.UserError$UserException:应该在运行时初始化的类在图像构建期间被初始化:me.escoffier.quarkus.Movie 要求在运行时初始化该类(来自功能 io. quarkus.runner.AutoFeature.beforeAnalysis)。要查看 me.escoffier.quarkus.Movie 被初始化的原因,请使用 -H:+TraceClassInitialization org.apache.avro.generic.GenericDatumReader 要求在运行时初始化该类(来自功能 io.quarkus.runner.AutoFeature.beforeAnalysis) . 要了解 org.apache.avro.generic.GenericDatumReader 被初始化的原因,请使用 -H:+TraceClassInitialization

4

1 回答 1

0

问题是要在本机中使用 avro,您必须向 graalvm 指示它必须执行本机的类。

要在本机模式下将 quarkus 与 avro 一起使用,您需要在文件中声明所有 avro 对象reflection-config.json

我在github上有一个例子

于 2021-11-29T21:27:06.117 回答