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,这样导入项目里面导致几乎每个包都有俩份。