hadoop - 将 avro avdl 文件共享到多个模块

标签 hadoop avro

我有一个多模块项目。有一个核心模块定义了一些通用或通用的东西。我在该核心模块中定义了一个 avdl 文件。我想在其他模块中定义一些其他 avdl 文件,这些文件使用核心模块中 avdl 文件定义的类型。

有没有办法用 avro maven 插件做到这一点?

最佳答案

如果您正在使用 maven,您应该能够使用 maven 插件(来自文档)编译您的 avdl 文件

<build>
  <plugins>
    <plugin>
      <groupId>org.apache.avro</groupId>
      <artifactId>avro-maven-plugin</artifactId>
      <executions>
        <execution>
          <goals>
            <goal>idl-protocol</goal>
          </goals>
        </execution>
      </executions>
    </plugin>
  </plugins>
</build>

如果您期望去定义本身,您应该能够将它作为资源的一部分放在您的公共(public)项目中,并像另一个依赖项一样共享它。

关于hadoop - 将 avro avdl 文件共享到多个模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47745449/

相关文章:

java - Apache 阿夫罗 : UnresolvedUnionException when using union data type

python - 使用 python 将 CSV 转换为 AVRO

apache-spark - 如何处理连接的 Avro 文件?

java - Q : Converting Avro to Parquet in Memory

hadoop - 将hadoop与OBIEE集成的利弊

hadoop - Oozie作业未提交

linux - 使用hadoop2(YARN)时出现连接异常

hadoop - 作业提交失败,异常 'org.apache.hadoop.util.DiskChecker$DiskErrorException(No space available in any of the local directories.)'

arrays - 配置单元-从文件中将值插入数组(逗号和分号分隔)

C# Avro Schema 没有用数据流编码