Spark 1.2.1,python avro示例不运行

时间:2015-02-28 13:50:03

标签: apache-spark avro

我刚刚构建了spark 1.2.1,我正在尝试运行avro示例,但它失败了。

    cd spark-1.2.1
    mvn -Pyarn -Phadoop-2.4 -Dhadoop.version=2.5.2 -DskipTests clean package

我做错了什么?我跑:

    cd spark-1.2.1
    bin/spark-submit --driver-class-path examples/target/spark-examples_2.10-1.2.1.jar examples/src/main/python/avro_inputformat.py examples/src/main/resources/users.avro

我最终得到以下错误:

 py4j.protocol.Py4JJavaError: An error occurred while calling z:org.apache.spark.api.python.PythonRDD.newAPIHadoopFile.
: java.lang.ClassNotFoundException: org.apache.avro.mapred.AvroKey
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)

1 个答案:

答案 0 :(得分:0)

我在这个问题Spark: Writing to Avro file

的一个答案中找到了诀窍

我需要在构建之前将以下块添加到maven pom.xml文件中,然后才能工作。

<dependency>
 <groupId>org.apache.avro</groupId>
  <artifactId>avro-mapred</artifactId>
  <version>1.7.7</version>
  <classifier>hadoop2</classifier>
</dependency>

显然与此问题有关 https://issues.apache.org/jira/browse/SPARK-3039