Windows下編譯hadoop 2.x Hadoop-eclipse-plugin外掛
由於使用的Hadoop版本是2.7.3,沒有相應的Eclipse開發外掛,就只好自己編譯一個。
編譯環境:
2.1 JDK配置
2.2安裝Eclipse,只需按正常開發配置好,能執行HelloWorld即可
2.3配置Ant,新增%ANT_HOME%\bin到PATH,執行ant -version,即可顯示Ant版本,說明配置好了
2.4下載hadoop二進位制包,解壓
2.5下載編譯Eclipse開發外掛的外掛source,目前hadoop2的eclipse-plugins原始碼由github脫管,下載地址是https://github.com/winghc/hadoop2x-eclipse-plugin開始編譯
3.1以管理員身份執行CMD,切換到E:\hadoop2x-eclipse-plugin-master\src\contrib\eclipse-plugin,灰色部分是我的解壓目錄。
3.2執行編譯,命令如下:
ant jar -Dversion=2.7.3 -Dhadoop.version=2.7.3 -Declipse.home=E:\eclipse-jee-neon-R-win32-x86_64\eclipse -Dhadoop.home=E:\hadoop-2.7.3
命令說明:
version: 編譯的Eclipse版本
hadoop.version: 要編譯的Hadoop版本
eclipse.home: eclipse home路徑
hadoop.home: hadoop 2.x home 路徑
注:編譯可能出錯,原因是編譯的Hadoop版本所依賴的jar包版本有變化,可修改2個地方來重新指定依賴的jar包版本:
1.不同的hadoop版本, 可調整h {hadoop2x-eclipse-plugin}/src/contrib/eclipse-plugin/build.xml檔案中的<attribute name="Bundle-ClassPath" 節點新增需要的jar包。此處會遇到一個問題,就是jar包的名稱有變化,如htrace-core的jar包,以前需要的是 htrace-core-+版本號,如lib/htrace-core-htrace.version.jar”/>,而新需要的是htrace−co {htrace.version}-incubating.jar”/>,此處只需注意編譯失敗提示,根據提示修改即可。
3.3 編譯成功之後,會在E:\hadoop2x-eclipse-plugin-master\build\contrib\eclipse-plugin目錄下出現編譯好的Eclipse外掛:hadoop-eclipse-plugin-2.7.3.jar在Eclipse中配置外掛
4.1 將生成的外掛放在eclipse的E:\eclipse-jee-neon-R-win32-x86_64\eclipse\plugins目錄下,然後重啟Eclipse後,即可在Window–>Preferens中看到Hadoop Map/Reduc選項,之後點選Map/ReduceLocation選項卡,點選右邊小象圖示,開啟Hadoop Location配置視窗: 輸入Location Name,任意名稱即可.配置Map/Reduce Master和DFS Mastrer,Host和Port配置成hdfs-site.xml與core-site.xml的設定一致即可。