我知道可以使用Apache提供的java工具将avdl转换为一系列avsc文件。
但是,尽管该网站列出了许多不同语言的实现,包括JS,但似乎不支持这些语言中的avdl -> avsc转换。
您对如何在纯JavaScript中执行此转换有什么建议?这样的库是否真的存在,或者我们总是被迫通过纯Java实现?
发布于 2021-03-23 20:40:02
Java似乎是他们实现从avdl到avsc编译的唯一语言。最简单的方法可能就是将avro-tools.jar放在某个地方,然后让JS代码在某个子流程中调用它来编译模式。
另一种选择是在JS中重新实现IDL编译器。我不会这么做,但是如果您想看一下,Java实现几乎都包含在https://github.com/apache/avro/blob/master/lang/java/compiler/src/main/javacc/org/apache/avro/compiler/idl/idl.jj中。
https://stackoverflow.com/questions/66760841
复制相似问题