【问题标题】:How to compile avro schema in eclipse?如何在 Eclipse 中编译 avro 模式?
【发布时间】:2016-07-05 17:58:14
【问题描述】:

我正在测试使用 Avro 转换一些文件,我添加了 guide of avro 1.7.7 建议的依赖项。

<dependency>
  <groupId>org.apache.avro</groupId>
  <artifactId>avro</artifactId>
  <version>1.7.7</version>
</dependency>

以及 Avro Maven 插件(用于执行代码生成):

<plugin>
  <groupId>org.apache.avro</groupId>
  <artifactId>avro-maven-plugin</artifactId>
  <version>1.7.7</version>
  <executions>
    <execution>
      <phase>generate-sources</phase>
      <goals>
        <goal>schema</goal>
      </goals>
      <configuration>
        <sourceDirectory>${project.basedir}/src/main/avro/</sourceDirectory>
        <outputDirectory>${project.basedir}/src/main/java/</outputDirectory>
      </configuration>
    </execution>
  </executions>
</plugin>
<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-compiler-plugin</artifactId>
  <configuration>
    <source>1.6</source>
    <target>1.6</target>
  </configuration>
</plugin>

但是本指南使用 shell 命令来编译 avro 模式 user.avsc。想请教在eclipse IDE中如何编译。

【问题讨论】:

  • 只需从 Eclipse 运行 Maven 构建。右键单击该项目,然后选择“Run as... > Maven install”作为开始。 重要的旁注&lt;outputDirectory&gt;${project.basedir}/src/main/java/&lt;/outputDirectory&gt; 是错误的:您不想在src 下生成源。生成的源代码应始终放在target 下,并且不受版本控制(如果插件尚未这样做,您可以使用build-helper-maven-plugin 将它们添加到构建路径中)。

标签: eclipse maven avro


【解决方案1】:

正如@Tunaki 所建议的,我“运行为...> Maven 安装”。 此外,我更新了在构建路径中添加了“目标/生成源”,以便我可以引用自动生成的文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-30
    • 2015-06-01
    • 1970-01-01
    相关资源
    最近更新 更多