spark源码编译记录

spark在项目中已经用了一段时间了,趁现在空闲,下个源码编译在IDEA里面阅读下,特此记录过程。

前提已经安装maven和git

1、上官网下载源码的包;

2、然后解压到一个文件夹

3、编译,编译的具体的信息可以看官网的介绍http://spark.apache.org/docs/latest/building-spark.html#encrypted-filesystems

  (1)设置maven参数

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

  (2)编译

mvn -Pyarn -Phadoop-2.7 -Pspark-ganglia-lgpl -Pkinesis-asl -Phive -DskipTests clean package

  (3)部署包

./dev/make-distribution.sh --name custom-spark --tgz -Psparkr -Phadoop-2.7 -Phive -Phive-thriftserver -Pyarn

4、导入IDEA 

以maven工程导入;在选择maven源的时候,根据上面编译的指令选择即可,如果导入之后发现错误,可以查看maven的依赖,根据错误选择对应的模块就可以,如果用不到的地方可以直接删除对应的maven源。

5、如果项目提示找不到类,可以根据提示看看是否引入的包的scope是否为complie,如果不是就改成complie;或者自己利用源码打一个包,然后将自己打的部署包解压,引入jars下面的所有的包页ok,这样导入项目里面导致几乎每个包都有俩份。

原文地址:https://www.cnblogs.com/ldsggv/p/9445512.html