spark源码编译(maven)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chenchaofuck1/article/details/72288214

从Spark官网上下载编译好的安装包,并不一定能够满足需要,有时候希望通过阅读和调试Spark源码来深入理解其内部机制,这时候需要自己去手动编译Spark。


Spark可以通过SBT和Maven两种方式进行编译,再通过make-distribution.sh脚本生成分布式的部署包。SBT编译需要安装sbt工具,而Maven安装则需要maven工具

准备:JDK,maven(或sbt)

1. 源码下载:

这里写图片描述
选择源码包,上传到开发环境并解压。

编译过程如下:
也可以参照官网,步骤简单:

http://spark.apache.org/docs/1.6.2/building-spark.html

2.maven编译

官方推荐maven编译,由于maven工具默认分配的内存比较小,因此需要将其内存上限调整。

$export MAVEN_OPTS="-Xmx2g -XX:MaxPermSize=512M -XX:ReservedCodeCacheSize=512m"

编译
进入源码包下build目录下执行:

$mvn -Pyarn -Phadoop-2.4 -Dhadoop.version=2.6.0 -Pspark-ganglia-lgpl  -Phive -DskipTests clean package

参数表示生成的版本支持yarn,hadoop,hive,ganglia。编译过程我花了半小时。
最后生成源码包目录下生成jar包:

3.生成部署包

在源码包下找到脚本make-distribution.sh执行:

./make-distribution.sh  --name 2.6.0 --tgz -Pyarn -Phadoop-2.2 -Pspark-ganglia-lgpl -Phive

最终生成和官网下载编译好的包一样,可以直接部署。
整个过程也半小时。
参考:
http://www.cnblogs.com/shishanyuan/p/4701656.html

展开阅读全文

没有更多推荐了,返回首页