我从github克隆了一个项目,现在把它打开作为IntelliJ中的一个项目。 该项目是用Scala编写的。
该项目依赖于github上另一个项目中的avro架构中定义的某些对象。 avro架构是单个* .avdl文件。
如何在IntelliJ中的项目中加载avro * .advl架构/文件?
因此,avro架构中定义的对象类型在项目的其余部分中是已知的。
IntelliJ是否识别avro * .advl文件? 我是否需要以某种方式从avro advl文件生成Scala / Java类?然后加载这些类?
答案 0 :(得分:0)
您是否尝试过Avro支持插件? https://plugins.jetbrains.com/plugin/7971?pr=idea
答案 1 :(得分:0)
我最终做的是:
下载avro工具:https://github.com/miguno/avro-cli-examples/blob/master/README.md
使用jar中的以下工具
idl2schemata Extract JSON schemata of the types from an Avro IDL file
compile Generates Java code for the given schema
我在代码中放在正确包下的java类的结果集。
这至少使得类型检查器在IntelliJ中很开心。还没有运行代码。
答案 2 :(得分:0)
我最近开始了一个Avro项目,由于不得不使用avro-tools.jar而感到恼火,因此我制作了IntelliJ插件-https://plugins.jetbrains.com/plugin/12281-avro-viewer。拖放Avro文件,它们以纯文本显示。