Mac搭建Hadoop源碼閱讀環境

一、本次Hadoop源碼閱讀環境使用的閱讀工具是idea,Hadoop版本是2.7.3。須要安裝的工具包括idea、jdk、maven、protobuf等html

二、jdk,使用的版本是1.8版,在jdk官網下載jdk-8u111-macosx-x64.dmg,點擊安裝,一路next。java

三、idea安裝,略node

四、maven,使用的版本是3.3.9,下載apache-maven-3.3.9-bin.tar,解壓:web

tar -zxvf  apache-maven-3.3.9-bin.tarshell

進入 Maven 安裝根目錄 cd apache-maven-3.3.9macos

進入 Maven配置文件目錄 cd confapache

編輯settings.xml文件 vi  settings.xmlapi

設置Maven本地庫的路徑:這個路徑要建立好。bash

 <localRepository>/opt/PRG/apache-maven-3.3.9/repository</localRepository>

同時在加入阿里雲的Maven庫,參考:maven使用阿里雲倉庫app

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

設置Maven環境變量:

vi ~/.bash_profile

export MAVEN_HOME=/opt/PRG/apache-maven-3.3.9
export PATH=${PATH}:${MAVEN_HOME}/bin:
export MAVEN_OPTS="-Xmx2g -XX:MaxPermSize=512M -XX:ReservedCodeCacheSize=512m"
export PATH

更新環境變量 source ~/.bash_profile

mvn -version 能看到相應的版本,則Maven安裝成功。

五、安裝protobuf,下載protobuf-2.5.0.tar.gz,下載地址: http://pan.baidu.com/s/1pJlZubT (網友提供)

解壓:tar -zxvf protobuf-2.5.0.tar.gz

cd protobuf-2.5.0

依次執行,參考:http://blog.sina.com.cn/s/blog_7d1531ed0101fmc5.html

 1 ./configure
 2 make
 3 make check
 4 make install

若是報沒有權限的錯誤,su root 切換到root執行。

最後輸入  protoc --version命令,如顯示libprotoc 2.5.0則安裝成功

 六、編譯Hadoop源碼

在Hadoop官網下載hadoop-2.7.3-src.tar.gz源碼

解壓:tar -zxvf  hadoop-2.7.3-src.tar.gz

cd hadoop-2.7.3-src

執行:

mvn package -Pdist -DskipTests -Dtar

最後是漫長的編譯過程。。。

下載依賴jar和相關文件。。。

最後輸出:[INFO] Reactor Summary:

[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO] 
[INFO] Apache Hadoop Main ................................. SUCCESS [  5.429 s]
[INFO] Apache Hadoop Build Tools .......................... SUCCESS [  2.148 s]
[INFO] Apache Hadoop Project POM .......................... SUCCESS [  1.061 s]
[INFO] Apache Hadoop Annotations .......................... SUCCESS [  3.297 s]
[INFO] Apache Hadoop Assemblies ........................... SUCCESS [  0.200 s]
[INFO] Apache Hadoop Project Dist POM ..................... SUCCESS [  1.627 s]
[INFO] Apache Hadoop Maven Plugins ........................ SUCCESS [  3.751 s]
[INFO] Apache Hadoop MiniKDC .............................. SUCCESS [  4.644 s]
[INFO] Apache Hadoop Auth ................................. SUCCESS [  6.750 s]
[INFO] Apache Hadoop Auth Examples ........................ SUCCESS [  3.126 s]
[INFO] Apache Hadoop Common ............................... SUCCESS [01:10 min]
[INFO] Apache Hadoop NFS .................................. SUCCESS [  5.191 s]
[INFO] Apache Hadoop KMS .................................. SUCCESS [01:12 min]
[INFO] Apache Hadoop Common Project ....................... SUCCESS [  0.037 s]
[INFO] Apache Hadoop HDFS ................................. SUCCESS [01:38 min]
[INFO] Apache Hadoop HttpFS ............................... SUCCESS [ 34.932 s]
[INFO] Apache Hadoop HDFS BookKeeper Journal .............. SUCCESS [ 13.482 s]
[INFO] Apache Hadoop HDFS-NFS ............................. SUCCESS [  3.823 s]
[INFO] Apache Hadoop HDFS Project ......................... SUCCESS [  0.039 s]
[INFO] hadoop-yarn ........................................ SUCCESS [  0.041 s]
[INFO] hadoop-yarn-api .................................... SUCCESS [ 28.981 s]
[INFO] hadoop-yarn-common ................................. SUCCESS [ 22.892 s]
[INFO] hadoop-yarn-server ................................. SUCCESS [  0.028 s]
[INFO] hadoop-yarn-server-common .......................... SUCCESS [  7.887 s]
[INFO] hadoop-yarn-server-nodemanager ..................... SUCCESS [  9.785 s]
[INFO] hadoop-yarn-server-web-proxy ....................... SUCCESS [  2.782 s]
[INFO] hadoop-yarn-server-applicationhistoryservice ....... SUCCESS [  5.300 s]
[INFO] hadoop-yarn-server-resourcemanager ................. SUCCESS [ 14.558 s]
[INFO] hadoop-yarn-server-tests ........................... SUCCESS [  4.048 s]
[INFO] hadoop-yarn-client ................................. SUCCESS [  4.785 s]
[INFO] hadoop-yarn-server-sharedcachemanager .............. SUCCESS [  3.260 s]
[INFO] hadoop-yarn-applications ........................... SUCCESS [  0.024 s]
[INFO] hadoop-yarn-applications-distributedshell .......... SUCCESS [  2.129 s]
[INFO] hadoop-yarn-applications-unmanaged-am-launcher ..... SUCCESS [  1.734 s]
[INFO] hadoop-yarn-site ................................... SUCCESS [  0.026 s]
[INFO] hadoop-yarn-registry ............................... SUCCESS [  4.279 s]
[INFO] hadoop-yarn-project ................................ SUCCESS [  3.812 s]
[INFO] hadoop-mapreduce-client ............................ SUCCESS [  0.124 s]
[INFO] hadoop-mapreduce-client-core ....................... SUCCESS [ 14.922 s]
[INFO] hadoop-mapreduce-client-common ..................... SUCCESS [ 11.181 s]
[INFO] hadoop-mapreduce-client-shuffle .................... SUCCESS [  2.904 s]
[INFO] hadoop-mapreduce-client-app ........................ SUCCESS [  7.072 s]
[INFO] hadoop-mapreduce-client-hs ......................... SUCCESS [  4.399 s]
[INFO] hadoop-mapreduce-client-jobclient .................. SUCCESS [  4.986 s]
[INFO] hadoop-mapreduce-client-hs-plugins ................. SUCCESS [  1.767 s]
[INFO] Apache Hadoop MapReduce Examples ................... SUCCESS [  4.552 s]
[INFO] hadoop-mapreduce ................................... SUCCESS [  2.718 s]
[INFO] Apache Hadoop MapReduce Streaming .................. SUCCESS [  5.164 s]
[INFO] Apache Hadoop Distributed Copy ..................... SUCCESS [  8.356 s]
[INFO] Apache Hadoop Archives ............................. SUCCESS [  2.022 s]
[INFO] Apache Hadoop Rumen ................................ SUCCESS [  4.104 s]
[INFO] Apache Hadoop Gridmix .............................. SUCCESS [  3.251 s]
[INFO] Apache Hadoop Data Join ............................ SUCCESS [  1.897 s]
[INFO] Apache Hadoop Ant Tasks ............................ SUCCESS [  1.855 s]
[INFO] Apache Hadoop Extras ............................... SUCCESS [  2.406 s]
[INFO] Apache Hadoop Pipes ................................ SUCCESS [  0.023 s]
[INFO] Apache Hadoop OpenStack support .................... SUCCESS [  3.771 s]
[INFO] Apache Hadoop Amazon Web Services support .......... SUCCESS [ 17.460 s]
[INFO] Apache Hadoop Azure support ........................ SUCCESS [  4.841 s]
[INFO] Apache Hadoop Client ............................... SUCCESS [  6.743 s]
[INFO] Apache Hadoop Mini-Cluster ......................... SUCCESS [  1.029 s]
[INFO] Apache Hadoop Scheduler Load Simulator ............. SUCCESS [  4.379 s]
[INFO] Apache Hadoop Tools Dist ........................... SUCCESS [  6.696 s]
[INFO] Apache Hadoop Tools ................................ SUCCESS [  0.022 s]
[INFO] Apache Hadoop Distribution ......................... SUCCESS [ 29.114 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 10:08 min
[INFO] Finished at: 2017-01-02T11:41:11+08:00
[INFO] Final Memory: 229M/959M
[INFO] ------------------------------------------------------------------------

沒有報錯,則說明編譯成功。

七、把編譯好的Hadoop源碼導入Idea

源碼路徑

找到編譯好的Hadoop,選擇便可,next。

選擇Maven工程 

 

以後一路next便可,以後就能夠開始閱讀源碼了。

相關文章
相關標籤/搜索