前言

    其实啊,无论你是初学者还是具备了有一定spark编程经验,都需要对spark源码足够重视起来。

  本人,肺腑之己见,想要成为大数据的大牛和顶尖专家,多结合源码和操练编程。

 

准备工作

 1、scala 2.10.4(本地的安装)

Scala的安装(本地)

  2、Jdk1.7+  或 jdk1.8+ (本地的安装)

Jdk 1.7*安装并配置

Jdk 1.8*安装并配置

JDK的windows和Linux版本之下载

  3、IntelliJ IDEA

IntelliJ IDEA的下载、安装和WordCount的初步使用(本地模式和集群模式)

  

Spark源码的编译过程详细解读(各版本)

另外,最后还是建议大家开始先使用 pre-built 的 Spark,对 Spark 的运行、使用方法有所了解,编写了一些 Spark 应用程序后再展开源代码的阅读,并尝试修改源码,进行手动编译。

总体流程

  1、从 Github 导入 Spark 工程

打开IntelliJ IDEA 后,在菜单栏中选择 VCS→Check out from Version Control→Git,之后在 Git Repository URL 中填入 Spark 项目的地址,并指定好本地路径,如下图所示。

https://github.com/apache/spark.git

或者,我们可以直接先下载好,

比如我这里,已经下载好了

解压,

提前,先准备好

对于spark源码的目录结构

1、编译相关    : sbt 、assembly、project

2、spark核心  :core

3、Spark Lib  : streaming 、 sql 、graphx 、mllib

4、运行脚本和配置 : bin  、sbin 、conf

5、虚拟化 : ec2 、docker 、dev

6、式例  : examples 、data

7、部署相关: yarn

8、python支持 : python

9、repl : repl

10、 3pp : externals

现在,我开始,进入spark源码导入工作。

先来关闭,已有的工程。

File   ->   Close Project

得到,如下

选择,Import Project

 这里,为了日后的spark源码阅读环境的方便和开发

安装之后的几个常用设置:

1、界面字体大小的设置

可见,界面字体的效果

2、代码字体的设置

3、因我们平常,用习惯了eclipse,快捷键,设置为我们平常,eclipse的风格。

完成

简单,带领,如何巧看spark源码?

这里,为了避免一个不利的阅读,

放到D盘的根目录下,

设置行号

其他的源码,首先,Ctrl + Shift + R,然后,自行去阅读。

建议,在理解概念,真的,可以拿源码来帮助理解!

总结

所以啊,源码 + 官网 ,是黄金组合。

  感谢下面博主:

http://www.open-open.com/lib/view/open1422067624734.html

https://my.oschina.net/eshijia/blog/371066

使用 IntelliJ IDEA 导入 Spark 最新源码及编译 Spark 源代码的更多相关文章

  1. 使用 IntelliJ IDEA 导入 Spark 最新源码及编译 Spark 源代码(博主强烈推荐)

    前言   其实啊,无论你是初学者还是具备了有一定spark编程经验,都需要对spark源码足够重视起来. 本人,肺腑之己见,想要成为大数据的大牛和顶尖专家,多结合源码和操练编程. 准备工作 1.sca ...

  2. spark最新源码下载并导入到开发环境下助推高质量代码(Scala IDEA for Eclipse和IntelliJ IDEA皆适用)(以spark2.2.0源码包为例)(图文详解)

    不多说,直接上干货! 前言   其实啊,无论你是初学者还是具备了有一定spark编程经验,都需要对spark源码足够重视起来. 本人,肺腑之己见,想要成为大数据的大牛和顶尖专家,多结合源码和操练编程. ...

  3. 使用 IntelliJ IDEA 导入 Spark源码及编译 Spark 源代码

    1. 准备工作 首先你的系统中需要安装了 JDK 1.6+,并且安装了 Scala.之后下载最新版的 IntelliJ IDEA 后,首先安装(第一次打开会推荐你安装)Scala 插件,相关方法就不多 ...

  4. windows下在idea用maven导入spark2.3.1源码并编译并运行示例

    一.前提 1.配置好maven:intellij idea maven配置及maven项目创建 2.下载好spark源码: 二.导入源码: 1.将下载的源码包spark-2.3.1.tgz解压(E:\ ...

  5. (升级版)Spark从入门到精通(Scala编程、案例实战、高级特性、Spark内核源码剖析、Hadoop高端)

    本课程主要讲解目前大数据领域最热门.最火爆.最有前景的技术——Spark.在本课程中,会从浅入深,基于大量案例实战,深度剖析和讲解Spark,并且会包含完全从企业真实复杂业务需求中抽取出的案例实战.课 ...

  6. 第一篇:Spark SQL源码分析之核心流程

    /** Spark SQL源码分析系列文章*/ 自从去年Spark Submit 2013 Michael Armbrust分享了他的Catalyst,到至今1年多了,Spark SQL的贡献者从几人 ...

  7. 即时通信系统中如何实现:全局系统通知,并与Web后台集成?【低调赠送:QQ高仿版GGTalk 5.1 最新源码】

    像QQ这样的即时通信软件,时不时就会从桌面的右下角弹出一个小窗口,或是显示一个广告.或是一个新闻.或是一个公告等.在这里,我们将其统称为“全局系统通知”.很多使用GGTalk的朋友都建议我加上一个类似 ...

  8. Spark Streaming源码解读之JobScheduler内幕实现和深度思考

    本期内容 : JobScheduler内幕实现 JobScheduler深度思考 JobScheduler 是整个Spark Streaming调度的核心,需要设置多线程,一条用于接收数据不断的循环, ...

  9. LAMP最新源码一键安装脚本

    Linux+Apache+MySQL+PHP (脚本可以选择是否安装+Pureftpd+User manager for PureFTPd+phpMyAdmin+memcache),添加虚拟主机请执行 ...

随机推荐

  1. linux运维面试题

    一.有文件file1 1.查询file1 里面空行的所在行号 grep -n "^#" file1 or awk ‗{if($0~/^$/)print NR}‘ file or g ...

  2. System.out.println(对象)

    class Person { private String name; private int age; public String getName() { return this.name; } p ...

  3. ps 命令使用总结

    ps命令用来查看进程信息,它是类似于快照类型的只显示一次,如果想及时刷新请用top命令. 1. 常用参数列表 -a 显示所有终端机下执行的进程,除了阶段作业领导者之外. a 显示现行终端机下的所有进程 ...

  4. 李洪强漫谈iOS开发[C语言-017]-printf函数

  5. SLF4J user manual

    http://www.slf4j.org/manual.html The Simple Logging Facade for Java (SLF4J) serves as a simple facad ...

  6. linux下查看防火墙当前状态,开启关闭等

    从配置菜单关闭防火墙是不起作用的,索性在安装的时候就不要装防火墙 查看防火墙状态: /etc/init.d/iptables status 暂时关闭防火墙: /etc/init.d/iptables  ...

  7. platform_driver与file_operations两种方法开发led驱动

    下面是两个LED灯的驱动程序 一个用platform_driver 另一个用file_operations #include <linux/kernel.h> #include <l ...

  8. 启动Activity时显示空白界面的问题

    问题描述: 启动activity时,先显示一个空白的界面,带标题栏的,1秒左右的时间后才显示activity对应 layout上的内容. 解决办法: 将activity的windows设置为透明的就可 ...

  9. C#中的@符号

      C# 中的 @ 符号 C# 中的 @ 符号其实有很多的用法,我们来看看 @ 有什么神奇之处. 1. 限定字符串 用 @ 符号加在字符串前面表示其中的转义字符 “ 不 ” 被处理. 如果我们写一个文 ...

  10. eclipse代码格式化

    今天想要改变Eclipse的代码颜色和背景等等,如果一项一项来,太麻烦了,于是从网上找了个epf文件,但是一开始不知道怎么弄,因为自己是个新手, 对于编译环境不太熟悉,后来找到方法,就是打开Eclip ...