雖然有許多人推崇vim編程,可是本人並不習慣vim編程,本人仍是比較在window下使用eclipse編程。另外因爲本人linux安裝的都是最小化安裝,沒有圖形界面,所以使用windows的eclipse編寫mapreduce程序遠程發送至linux的hadoop下運行。java
默認已經在linux上裝好了Hadoop而且在windows上安裝了Eclipse環境linux
固然咱們不是在windows上安裝hadoop,在window上安裝hadoop須要其餘的環境,咱們只是使用hadoop的庫而已。git
1. 在windows上下載hadoop安裝包並解壓
咱們先下載hadoop:下載地址
咱們主要使用它的庫,僅僅解壓就能夠。github
)shell
解壓Hadoop壓縮包
apache
2.在eclipse上安裝hadoop插件編程
下載hadoop-eclipse-plugin-2.6.0.jar:vim
官方的網太慢,下載不下來。將下載好的插件移動到eclipse安裝目錄下的plugins文件夾下。而後從新啓動eclispewindows
3. 配置環境
打開eclipse,在window -> Preferences ->Hadoop Map/Reduce下設置hadoop的解壓路徑
併發
切換至Map/Reduce項目窗口
新建一個hadoop配置
而後設置Hadoop鏈接
4. 啓動hadoop
咱們在linux上啓動hadoop集羣
5. 測試: hdfs文件管理
咱們能夠嘗試上傳和下載文件
成功!
6.測試:建立一個MapReduce項目
咱們建立一個MapReduce項目
咱們查看建立的結果
咱們會發現有許多hadoop的jar包
而後咱們就能夠使用eclipse編寫mapreduce程序了!
咱們編寫好了而後呢?在windows上因爲沒有hadoop環境所以沒法運行。能夠發送的安裝hadoop的linux下運行。
咱們在Eclipse上安裝一個「SFTP Plug-in」插件,官方網站:SFTP Plug-in for Eclipse
對於安裝的介紹:
You need Eclipse SDK 3.3(or higher) to enjoy this software.
Help > Software Updates > Find and Install... Choose Search for new features to install Click New Remote Site..., and then put http://eclipse.jcraft.com/ for the URL field. Choose SFTP Plug-in, and then click Select Required button.For Eclipse SDK 3.2, try the Update Site
http://eclipse.jcraft.com/3.2/
其實已經挺詳細了,可是仍是介紹一下吧:
1. 點擊"Help" -> "Install New software..."
2. 添加插件下載地址的網址:
3. 選擇 SFTP Plug-in,點擊「Next...」
而後「Next」->贊成條款,"Next" -> 選擇,"Next"
4. 重啓
5. 選擇「Remote System Explorer」
關於他的配置在`"window"->"preferences" ->"Remote Systems"下
而後咱們怎麼使用呢?
1. 編寫一個MapReduce程序
我先在「Map/Reduce」視圖下編寫一個MapReduce程序
2. 將class文件打成jar包
切換至「Remote System Explorer」視圖,將項目向下的bin目錄打成jar包。在eclipse中當java文件保存後會自動編譯爲class文件。所以不須要咱們使用javac編譯。
修改打包的jar的名字爲咱們想要的名字後運行
咱們會發現當前項目的bin目錄下會有咱們剛剛打出的jar包
3. 設置遠程管理linux文件
新建一個鏈接
選擇「linux」,點擊「Next..」
配置Host,點擊next...
向下依次選擇"ssh.files"->"processes.shell.linux"->"ssh.shell"->"ssh.terminals",點擊「finish」而後咱們就能夠輸入用戶名和密碼遠程linux了
4. 將jar包拷貝至linux下
點擊「sftp files」下的「My Home」,輸入用戶名和密碼就就能夠將本地的文件拷貝至linux上(就是複製文件,而後粘貼),能夠查看複製結果:
5.遠程鏈接hadoop運行該程序 在「ssh Teminals」->"Launch Teminal"運行linux命令行。 咱們能夠在Teminal窗口下運行該程序。