Ошибка в «Eclipse Plugin для Scala» при компиляции класса Spark

1

Я использую CDH5.1.0 для простого программирования Spark. Кроме того, у меня есть Eclipse Juno (поставляется с VM) и установлен плагин Scala IDE 2.10.0. Я получаю следующую ошибку в среде IDE:

Плохая символическая ссылка. Подпись в SparkContext.class относится к термину io в пакете org.apache.hadoop, который недоступен. Это может быть полностью отсутствует в текущем пути к классам, или версия на пути к классам может быть несовместима с версией, используемой при компиляции SparkContext.class. SimpleApp.scala/MyScalaProject/src/com/test/spark1 line 10 Проблема Scala

Код:

package com.test.spark1
import org.apache.spark.SparkConf
import org.apache.spark.SparkContext
import org.apache.spark.SparkContext._
object SimpleApp {
  def main(args: Array[String]) {
    val logFile = "/home/Desktop/scala/sparktest.txt" // Should be some file on your system
    val conf = new org.apache.spark.SparkConf().setAppName("Simple Application")
    val sc = new SparkContext(conf)
    val logData = sc.textFile(logFile, 2).cache()
    val numAs = logData.filter(line => line.contains("a")).count()
    val numBs = logData.filter(line => line.contains("b")).count()
    println("Lines with a: %s, Lines with b: %s").format(numAs, numBs)
  }
}

Я получаю ту же ошибку в строке # 10 (var conf - новый org.apache.spark.SparkCon...), а также строка # 15 (println...).

В моем пути построения проекта есть /usr/lib/spark/assembly/lib/spark-assembly-1.0.0-cdh5.1.0-hadoop2.3.0-cdh5.1.0.jar и я проверил все необходимые классы для этой простой программы scala.,

Теги:
apache-spark
cloudera-cdh

1 ответ

2

Ошибка компиляции исчезла, как только я добавил следующую схему в путь сборки:

Hadoop-синфазный 2.3.0-cdh5.1.0.jar

поэтому была некоторая внутренняя зависимость, которая отсутствовала, вызвав эту ошибку.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню