1.配置好maven:intellij idea maven配置及maven项目建立html
2.下载好spark源码:sql
1.将下载的源码包spark-2.3.1.tgz解压(E:\spark-2.3.1.tgz\spark-2.3.1.tar)至E:\spark-2.3.1-srcapache
2.在ideal导入源码:windows
a.选择解压的源代码文件夹maven
b.使用maven导入工程ide
c.选择对应组件的版本post
而后点击下一步:idea
点击finish后,等待maven下载相关的依赖包,以后工程界面以下:spa
修改E:\spark-2.3.1-src\pom.xml文件,以免这俩变量未定义,致使最终在E:\spark-2.3.1-src\assembly\target\scala-2.11\没有jar包scala
开始使用maven对spark源码进行编译打包成jar:
编译结果以下:
会在每一个模块的target目录生成对应的jar,并在assembly\target\scala-2.11\jar下生成spark须要的所有jar包
解决办法以下,在E:\spark-2.3.1-src\sql\catalyst\target目录下会出现antlr4相关的类:
三.运行spark自带示例(前提:须要配置spark在windows下的运行环境,参见win7下配置spark)
1.SparkPi
报错以下:
刚才生成的spark相关的依赖包没找到,解决办法以下:
再次运行,结果以下:
2.经过org.apache.spark.deploy.SparkSubmit提交任务并运行(前提是像运行SparkPi同样,把assembly\target\jars的依赖加进该模块,方法同上):
2.1 org.apache.spark.repl.Main
结果:
2.2 自定义spark代码类运行(以自带的org.apache.spark.examples.JavaWordCount为例)