Spark2.0源码阅读环境搭建 开发环境搭建

39 篇文章 0 订阅
18 篇文章 0 订阅

Spark2.0源码阅读环境和Spark开发环境,我们选择使用IDEA社区版,所以下载IDEA社区版;并且使用Java8环境。

1 jdk8安装

下载略
这里写图片描述
解压到当前目录

tar -xzvf jdk-8u101-linux-x64.tar.gz

这里写图片描述
…………
这里写图片描述
查看
这里写图片描述
移动到相应目录(自己新建的目录)

mv jdk1.8.0_101 /home/hjr/develop/java8

这里写图片描述

2 IDEA 安装

下载略
这里写图片描述
解压到当前目录

tar -xzvf ideaIC-2016.2.2.tar.gz

这里写图片描述
…………..
这里写图片描述
查看
这里写图片描述
移动到相应目录

mv idea-IC-162.1628.40 /home/hjr/develop

这里写图片描述

3 IDEA设置

3.1 Scala插件安装

这里写图片描述
IDEA最新版界面
这里写图片描述
打开之后选择设置主题,在选择安装插件,我这里已经安装好了scala插件,就不再截图了
这里写图片描述

3.2 Git安装

下载地址

https://git-scm.com/downloads/

选择相应的系统下载(我们是linux)
这里写图片描述
这里写图片描述
我们是Ubuntu16.04,所以我们使用以下命令在线安装:

apt-get install git

这里写图片描述
我们是hjr用户,没有root权限,所以加上sudo

sudo apt-get install git

这里写图片描述
这里写图片描述
查看版本
这里写图片描述

4 Spark2.0源码下载

我们使用Github上的Spark源码作为源码下载地址:(也可以直接到Spark官网上面去下载,然后Import进来,都是可以的)

Spark官方的Github源码地址
https://github.com/apache/spark
Spark官网下载地址
http://spark.apache.org/downloads.html

4.1 Check out from Version Control–GitHub

这里写图片描述
设置GitHub登录信息
这里写图片描述
密码验证
这里写图片描述
设置Spark源码下载地址:
这里写图片描述
点击Clone,开始下载Spark源码
这里写图片描述
漫长的等待(时长由自己的网络决定)。。。。。。
这里写图片描述

这里写图片描述

4.2 打开项目

打开项目的时候,IDEA会根据Maven工程的POM文件自动下载所需要的Jar包:
这里写图片描述
等待。。。。。。
终于jar包下载完成,打开了项目,如下图所示:
这里写图片描述
这里写图片描述

4.3 设置项目的JDK

打开File–>Project Structure–>Platform settings–>SDKS选择JAVA的安装路径即可Apply即可
这里写图片描述
这里写图片描述
然后选择Setup JDK,就会自动识别我们刚才设置的的JDK
这里写图片描述
等待项目Updating……
这里写图片描述
项目更新完之后效果如下图所示:(没有报错了)
这里写图片描述
这里写图片描述

4.4 测试运行examples

这里写图片描述
有问题:(各种找不到呗)

Error:(45, 66) not found: type SparkFlumeProtocol
  val transactionTimeout: Int, val backOffInterval: Int) extends SparkFlumeProtocol with Logging {
Error:(70, 39) not found: type EventBatch
  override def getEventBatch(n: Int): EventBatch = {
Error:(85, 13) not found: type EventBatch
        new EventBatch("Spark sink has been stopped!", "", java.util.Collections.emptyList())

这是下载jar包的时候,没有下载完全,再来一次就行,或者再来多次就行了。
View –> Tool Windows –> Maven Projects –>Generate Sources and Update Folders For All Projects(两个箭头首尾相连的那个按钮),然后等待…(这个过程如果你需要关闭idea,随意就行,因为重启idea后它会继续)
这里写图片描述
这里写图片描述
(我这里来了两次,终于下载完全了,现在是编译的过程,没有报错了,一大堆Warning…不管咯)
这里写图片描述

编译成功之后,如下图所示:
这里写图片描述

运行一个Example实例:
运行LocalPi,又报错了:

Exception in thread "main" java.lang.NoClassDefFoundError: scala/Function1
    at org.apache.spark.examples.LocalPi.main(LocalPi.scala)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)
Caused by: java.lang.ClassNotFoundException: scala.Function1
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 6 more

Process finished with exit code 1

错误原因分析:Scala 的版本与 Spark2.0所使用的Scala版本不匹配

这里Spark2.0默认使用的是Scala2.11.8,所以我们也得将我们的Scala调整为Scala2.11.8

IDEA安装的Scala插件里所对应的Scala版本不是2.11.8,具体是哪个版本我们得查看一下:

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

易悠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值