Spark编译但无法在Intellij中运行测试程序?

时间:2015-09-02 23:43:31

标签: scala intellij-idea apache-spark

Spark已通过Maven在Intellij内编译。我正在运行其中一个测试套件。它确实启动但在基本的scala库中失败了。到底是怎么回事?

Caused by: java.lang.ClassNotFoundException: scala.collection.GenTraversableOnce$class

请注意,这是一个maven项目,使用mvn test从命令行成功运行测试。

这是scala库信息:

enter image description here

这是项目定义:

enter image description here

以下是显示scala 2.11依赖关系的模块信息:

enter image description here 这是运行配置:

enter image description here

以下是运行的结果:

enter image description here

更新我被问及pom.xml。对于scala-2.11,它是来自spark的pom.xml。 https://github.com/apache/spark/blob/master/pom.xml

这是片段

<profile>
  <id>scala-2.11</id>
  <activation>
    <property><name>scala-2.11</name></property>
  </activation>
  <properties>
    <scala.version>2.11.7</scala.version>
    <scala.binary.version>2.11</scala.binary.version>
  </properties>
</profile>

  <dependency>
    <groupId>org.scala-lang</groupId>
    <artifactId>scala-compiler</artifactId>
    <version>${scala.version}</version>
  </dependency>
  <dependency>
    <groupId>org.scala-lang</groupId>
    <artifactId>scala-reflect</artifactId>
    <version>${scala.version}</version>
  </dependency>
  <dependency>
    <groupId>org.scala-lang</groupId>
    <artifactId>scala-library</artifactId>
    <version>${scala.version}</version>
  </dependency>
  <dependency>
    <groupId>org.scala-lang</groupId>
    <artifactId>scala-actors</artifactId>
    <version>${scala.version}</version>
  </dependency>
  <dependency>
    <groupId>org.scala-lang</groupId>
    <artifactId>scalap</artifactId>
    <version>${scala.version}</version>
  </dependency>

1 个答案:

答案 0 :(得分:0)

您需要确保Spark lib在您的class_path上。

建立它运行

build/mvn -DskipTests clean package

然后将'/assembly/target/scala-$SCALA_VERSION/spark-assemblyhadoop-deps.jar'包含在您的项目中。