Linux下編譯使用hadoop-2.6.0 Eclipse插件(一):編譯

一、編譯環境

Hadoop:Hadoop-2.6.0
OS:Linux Mint 17(Ubuntu 14.04)
Eclipse:eclipse-inst-linux64.tar.gz
參照原文:README

二、相關依賴

JDK1.8:下載地址
ant1.9.7:下載地址
Hadoop2.6.0 eclipse插件源碼:源碼下載地址

三、前期準備

1、安裝JDK

JDK安裝可以參考原文: CentOS 6.5下搭建hadoop 2.6.0集羣(一):安裝配置JDK
在安裝之前,需要查看系統是否自帶JDK,若有,則需要對其卸載重新安裝

2、安裝ant

對ant安裝包進行解壓,我的解壓目錄爲/usr/local/apache-ant-1.9.7
使用root權限修改/etc/profile,在該文件中添加這幾行:

export ANT_HOME=/usr/local/apache-ant-1.9.7
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$ANT_HOME/bin

保存,運行命令source /etc/profile

四、編譯插件

1、修改build

將Hadoop2.6.0 eclipse插件源碼解壓,修改./src/contrib/eclipse-plugin/build.xml:

<target name="compile" depends="init, ivy-retrieve-common" unless="skip.contrib">

將這一行修改爲

<target name="compile" unless="skip.contrib">

2、編譯運行

ant jar -Dversion=2.4.1 -Dhadoop.version=2.6.0 -Declipse.home=/usr/local/eclipse -Dhadoop.home=/usr/local/hadoop

hadoop的版本和位置,eclipse的位置,都按照自己的實際情況進行填寫。

編譯完成後,就會在./build/contrib/eclipse-plugin/classes下生成hadoop-eclipse-plugin-2.6.0.jar,./build/contrib/eclipse-plugin需要預先建立,否則會編譯出錯.

五、其他

在看README中,有這樣兩行:

Note: compile issues resolve:
1、For different hadoop, adjust ${hadoop2x-eclipse-plugin-master}/ivy/libraries.properties, to match hadoop dependency lib version.
2、modify ${hadoop2x-eclipse-plugin}/src/contrib/eclipse-plugin/build.xml, in the node: <attribute name="Bundle-ClassPath" .... to add the jar needed.

也就是說你在編譯出2.2.0、2.4.0、2.6.0這三個版本的源碼之外的版本,比如編譯2.5.2的插件,需要對libraries.properties、build.xml做更多修改,具體細節可參考 Hadoop之——hadoop2.5.2eclipse插件編譯

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章