準備工做:java
Hadoop安裝完成(個人版本爲1.2.1)。apache
搞一個比較乾淨的Eclipse。eclipse
下載與Hadoop版本相匹配的插件:hadoop-eclipse-plugin-1.2.1.jaroop
安裝、配置:spa
1. 將插件拷貝到eclipse安裝目錄的plugins文件夾中,若是從新打開eclipse後看到有以下視圖,則說明你的hadoop插件已經安裝成功了。.net
Hadoop installation directory指定你的Hadoop解壓了路徑。
插件
2. 設置MapReduce Location。code
在Window-->Show View中打開Map/Reduce Locations。
在Map/Reduce Locations中新建一個Hadoop Location。在這個View中,右鍵-->New Hadoop Location。在彈出的對話框中你須要配置Location name,如Hadoop,還有Map/Reduce Master和DFS Master。這裏面的Host、Port分別爲你在mapred-site.xml、core-site.xml中配置的地址及端口。orm
鏈接成功則會顯示DFS裏面的內容xml
3. 運行WorldCount程序。
發現報錯:
14/12/14 15:32:44 ERROR security.UserGroupInformation: PriviledgedActionException as:Administrator cause:java.io.IOException: Failed to set permissions of path: \tmp\hadoop-..此處省略...\.staging to 0700 Exception in thread "main" java.io.IOException: Failed to set permissions of path: \tmp\...此處省略. to 0700
網上說是由於Windows下文件權限問題,須要將hadoop-core-1.2.1.jar中的src/core/org/apache/hadoop/fs/FileUtil.java裏面調用checkReturnValue方法的地方注掉便可(在Windows下不須要去檢查),而後從新編譯、打包。個人作法是將hadoop-core-1.2.1.jar中的源碼修改以後,從新編譯生成class文件,找到FileUtil.class直接將jar包中的文件替換便可。
若是你還嫌麻煩,直接下載我編譯好的便可。點擊下載hadoop-core-1.2.1.jar
再次運行WorldCount程序,跑起來了。
友情提示:Eclipse如何跑MapReduce程序,在個人另外一篇博客MapReduce統計詞語出現次數中有詳細描述.