spark源码分析-源码编译(1)
写在前面的话
有了丰富的spark大数据处理经验和性能调优经验后,基于对spark高性能内存计算的爱慕,决定揭开其神秘的面纱,一睹芳容。
源码编译
在进行源码分析之前,最重要的一步是什么? 个人认为先把源码下载到本地,进行源码编译,编译成功后,就可以开启神秘探索的旅程了。万事开头难,no problem,我就喜欢迎难而上。
-
下载源码 1:登陆官网地址下载: 选择相对应的版本,本文选择spark1.5.2 2:Github下载:git clone 编译方式 spark源码编译三大方式: 1:maven编译 2:sbt编译 3:打包编译make-distribution.sh 萝卜白菜,各有所爱,个人倾向于maven编译。 心得 有时间,自己一定要动手编译源码,想要成为高手和大数据领域大牛,前面的苦,是必定要吃的。 无论是编译spark源码,还是hadoop源码。新手初次编译,一路会碰到很多问题,也许会花上个一天甚至几天,这个是正常。把心态端正就是!有错误,更好,解决错误,是最好锻炼和提升能力的。
OK,实践出真知!
编译步骤
工欲善其事,必先利其器。 选取一个好的编辑器非常重要,我在scala编程之前一直用的eclipse进行java的开发,刚开始使用idea的时候真不习惯,包括编译、刷新、快捷键的使用;后来摸熟了后渐渐的爱上了她。不要问我为什么,告诉你两个字:感觉(你懂的)
哥们,别急,在导入代码之前,先准备好以下几件装备: 1: 安装jdk1.7 2: 安装maven(版本3.0以上自由选择) 注意:如果没有联网,需要创建本地内网仓库 3: 在idea上安装scala的插件(版本与spark版本对应)本文选择2.10.4
OK,万事俱备,开始导入源码 1: 待源码导入后,如果pom.xml文件报错,一定是没有联网,可以把报错的maven依赖需要的包从网上下载放入maven本地仓库中。 2: 待pom.xml的所有错误消失后,点击工程后右键选中 maven->reimport将依赖的jar包全部导入到工程中。 3: 此时如果顺利的话,代码不会有报错。在cmd命令中进入spark的源码目录执行如下maven命令: mvn -Pyarn -Phadoop-2.4 -Dhadoop.version=2.4.0 -Phive -Phive-thriftserver -Psparkr -DskipTests clean package 很不幸,报错了:
出现错误: Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.4.0:exec (sparkr-pkg) on project spark-core_2.10: Command execution failed. Process exited with an error: 127 (Exit value: 127) -> [Help 1]
解决办法如下: 将脚本中的-Psparkr改成-PR即可。
上一篇:
IDEA上Java项目控制台中文乱码