Hadoop1.1.2版本沒有直接適合Eclipse的安裝外掛,需要手動打包jar檔案。
我的系統配置:
- VMware Workstation10
- CentOS-6.5-i386
- hadoop-1.1.2
- eclipse_SDK_3.7.2_win32
系統配置說明:
我的電腦是Win7 32位的,安裝了VMware虛擬機器。
在虛擬機器中安裝的是CentOS系統(Linux系統)。
在Linux系統中配置的是Hadoop1.1.2的偽分散式叢集環境。
Eclipse安裝在Window系統下。
實現功能:
在window下的Eclipse中安裝Hadoop的開發環境。
實現步驟:
一、編譯eclipse hadoop plugin外掛
詳細參照頁面:http://blog.csdn.net/yonghutwo/article/details/9185797
說明:使用此方法沒有成功,沒能成功打包生成jar檔案。最後下載了現成的jar檔案使用。
二、配置Eclipse
詳細參照頁面:http://f.dataguru.cn/thread-23548-1-1.html
三、執行問題。
12/04/24 15:32:44 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable 12/04/24 15:32:44 ERROR security.UserGroupInformation: PriviledgedActionException as:Administrator cause:java.io.IOException: Failed to set permissions of path: \tmp\hadoop-Administrator\mapred\staging\Administrator- 519341271\.staging to 0700 Exception in thread "main" java.io.IOException: Failed to set permissions of path: \tmp\hadoop-Administrator\mapred\staging\Administrator-519341271\.staging to 0700
問題原因:
這個是Windows下檔案許可權問題,在Linux下可以正常執行,不存在這樣的問題。
解決方法是將hadoop-x.x.x/src/core/org/apache/hadoop/fs/FileUtil.java裡面方法checkReturnValue的程式碼註釋掉.
再重新編譯生成hadoop-x.x.x-core.jar.
問題解決:
新建一個MapReduce專案, 把hadoop-x.x.x/src/core/org/apache/hadoop/fs/FileUtil.java程式碼複製到src下(注意, 目錄結構也需要), 按上面修改檔案, 然後重新build下, 找到編譯好的.class(兩個), 用解壓軟體開啟hadoop-x.x.x-core.jar, 把這兩個class檔案覆蓋即可.
怎樣build一個類檔案:右鍵類--Export--Ant Bulidfiles
提供一個我編譯好的jar檔案。下載地址: http://files.cnblogs.com/6tian/hadoop-core-1.1.2.rar
(使用時將.rar字尾改成.jar 部落格園不允許上傳jar型別的附件)