1. 程式人生 > >spark2.0.1源碼編譯

spark2.0.1源碼編譯

ima ive 配置 pan 編譯時間 jdk 內容 進入 dha

一、編譯源碼步驟演示詳解

. 編譯spark環境要求

1、必須在linux系統下編譯(以centos6.4為例)

2、編譯使用的JDK版本必須是1.6以上(以JDK1.8為例)

3、編譯需要使用Maven版本3.0以上(以Maven3.3.9為例)

4、編譯需要使用Scala(以scala-2.11.8為例)

. 編譯spark所需要的包

1、spark-2.0.1.tgz:下載spark編譯的源碼包,提供apache下載頁面http://archive.apache.org/dist/spark/spark-2.0.1/

2、scala-2.11.8.tgz:提供下載頁面 http://www.scala-lang.org/download/2.11.8.html

3、zinc-0.3.9.tar.gz:提供下載頁面 http://pan.baidu.com/s/1boJ0nIR

註:2、3兩步的包,可不用提前下,如不提供,則在編譯時,會通過maven源自動下載下來,為編譯時節省時間,可選取先下載後,再放到相應的目錄下

=================================== 編譯開始 ===================================

第一步:解壓spark-2.0.1.tgz源碼安裝包

技術分享

第二步:JDK、Maven安裝及環境變量的配置,可參照上一篇hadoop編譯中提到的來配置,在這不再詳述;

第三步:進入/opt/work_dh/software/comm/spark-2.0.1/dev目錄下,修改make-distribution.sh文件(註:此文件由於編譯的版本一致,可能存在不同的目錄下,請自行查找

),修改內容如下:

技術分享

將該文件中四個變量之前的值註釋,改為對應版本的值即可;此步非必須,若不給定,它也會從maven源中下載,為節省編譯時間,直接給定;

第四步:進入/opt/work_dh/software/comm/spark-2.0.1目錄下的pom.xml文件,修改scala版本號,兩處地方,如下圖:(註:若scala就是spark2.0.1默認支持的版本,則此步跳過

<scala.version>2.11.8</scala.version>

第五步:修改maven的鏡像源,進入到/opt/work_dh/app/apache-maven-3.3.3/conf目錄下,修改setting.xml文件,內容如下:

<mirror>
      <id>nexus-aliyun</id>
      <mirrorOf>*</mirrorOf>
      <name>Nexus aliyun</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror> 

第六步:將上述下載的scala-2.11.8.tgz、zinc-0.3.9.tar.gz解壓到spark源碼包的build目錄下,如下圖所示:

技術分享

第七步:使用make-distribution.sh方式進行編譯,進入/opt/work_dh/software/comm/spark-2.0.1/dev目錄(make-distribution.sh所在目錄)下運行如下命令:

Apache編譯:
./make-distribution.sh --tgz -Phadoop-2.6 -Dhadoop.version=2.7.3 -Pyarn -Phive -Phive-thriftserver

編譯成功!看到如下界面後,說明編譯成功了,在手動下載源碼包情況,編譯的時間大概需要半個小時

技術分享

=================================== 編譯結束 ===================================

spark2.0.1源碼編譯