在终端中运行Scala时出错:“对象apache不是包org的成员”

时间:2019-07-19 05:48:37

标签: scala apache-spark

我正在使用sublime编写我的第一个Scala程序,并且正在使用终端运行它。 首先,我使用scalac assignment2.scala命令对其进行编译,但是它显示错误消息:“错误:对象apache不是包org的成员” 我该如何解决?

这是我的代码:

import org.apache.spark.SparkConf
import org.apache.spark.SparkContext 
import org.apache.spark.SparkContext._

object assignment2 {
  def main(args: Array[String]) {
    val conf = new SparkConf().setAppName("assignment2")
    val sc = new SparkContext(conf)

    val input = sc.parallelize(List(1, 2, 3, 4)) 
    val result = input.map(x => x * x) 
    println(result.collect().mkString(","))
  }
}

2 个答案:

答案 0 :(得分:0)

您要在哪里提交作业。要运行任何spark应用程序,您需要从spark安装目录中的 bin / spark-submit 提交它,或者需要在您的环境中设置spark-home,提交时可以参考。 >

答案 1 :(得分:0)

实际上,您不能直接运行spark-scala文件,因为要编译scala类,您需要spark库。因此,要执行scala文件,您需要使用spark-shell。要在spark-shell中执行spark scala文件,请执行以下步骤:

  1. 使用下一个命令打开您的spark-shell- 'spark-shell --master yarn-client'
  2. 使用确切位置加载文件- ':load File_Name_With_Absoulte_path'
  3. 使用类名-'ClassName.main(null)'运行主方法