Spark开发环境及源码阅读环境配置

源码阅读环境配置:

参考如下博文:Windows + IDEA + SBT 打造Spark源码阅读环境

上面是在windows环境的配置,比较耗时,而且由于网络原因,很有可能出错;在linux环境下就比较简单了:

  1. 进入spark源代码目录下,运行以下命令:./sbt/sbt gen-idea会自动生成idea项目文件;
  2. 然后进入idea,点击File->Open project即可。

使用intellij配置开发环境:

  1. 安装JDK
  2. 安装Scala
  3. 安装intellij IDEA,并安装Scala插件File——>settings——>Plugins然后搜索Scala,点击安装即可(可能因为网络原因搜不到)
  4. 创建名称为SparkTest的Scala Project;加入编译好的Libraries spark-assembly-1.3.1-hadoop2.4.0.jar(直接下载编译好的,在spark的lib目录下)
  5. 创建SparkPi程序,复制示例程序进去,如下图
    Spark开发环境及源码阅读环境配置_第1张图片

  6. 本地运行;
    点击运行左边的 Edit configuration,添加Application:SparkPi;
    在配置中输入Mian Class:SparkPi;VM options:-Dspark.master=local然后点击OK。
    Spark开发环境及源码阅读环境配置_第2张图片

  7. 运行,出现以下错误:

    Failed to locate the winutils binary in the hadoop binary path java.io.IOException: Could not locate executable null \bin\winutils.exe in the Hadoop binaries.

    点击出错行,发现是HADOOP_HOME没有的原因。
    GitHub上,有人提供了winutils的windows的版本,项目地址是: https://github.com/srccodes/hadoop-common-2.2.0-bin
    下载后随便解压到一个目录;
    配置环境变量HADOOP_HOME,指向下载的zip包解压的目录,然后在系统变量path里增加%HADOOP_HOME%\bin 即可。

  8. 再次运行 ,出现以下错误:

    Exception in thread "main" java.lang.NoSuchMethodError: scala.collection.immutable.HashSet$.empty()Lscala/collection/immutable/HashSet;

    主要原因是,之前下载了Scala2.11.7导致的,重新下载Scala2.10.2,运行无报错。

你可能感兴趣的:(spark,开发)