Hadoop使用ant+ivy組織工程,無法直接導入Eclipse中。本文將介紹如何基於Eclipse搭建Hadoop源碼環境。
准備工作
本文使用的操作系統為CentOS。需要的軟件版本:hadoop-1.0.4、jdk-1.6.0_43、ant-1.9.2、eclipse3.6。
安裝與配置JDK
安裝Eclipse
安裝與配置Ant
下載Hadoop源碼
以上工作就不細說了,這些沒啥難度,注意要配置好jdk和ant的環境變量。
編譯源碼
進入hadoop項目的根目錄,在bash中執行ant eclipse
。命令行結束之后,就可以向Eclipse中導入工程。
導入工程
File -> Import -> Existing Projects into Workspace -> Browse (選擇hadoop-1.0.4目錄) -> Finish,然后工程成功導入。
完成上述工作以后,Eclipse提示一個錯誤:“Unbound classpath variable:'ANT_HOME/lib/ant.jar'in project 'hadoop-1.0.4'”。
顯然,我們需要設置系統的ANT_HOME變量,讓Eclipse能夠找到編譯源碼需要的Ant庫,選擇項目,然后打開Eclipse的Project->Properties->Java Build Path,在Libraries頁編輯(單擊“Edit”按鈕)出錯的項: ANT_HOME/lib/ant.jar,創建變量ANT_HOME(在接下來的第一個對話框里單擊“Variable”,第二個對話框里單擊“New”按鈕),其值為Ant的安裝目錄。
還有一個問題就是:TestRandomAlgorithm類“import com.sun.tools.javac.code.Attribute.Array;”提示找不到,可以將其注釋或者將jdk目錄下/lib/tools.jar加到工程中。OVER