《hadoop:the definitive guide 3th》中的例子默認提供了一種編譯和構建jar包方法——maven,如果沒有maven你會發現編譯測試隨書的源碼會非常的麻煩(至少在命令行下),當然你也可以使用eclipse導入隨書的源碼再自己一個個的添加依賴性jar包(恐怕也不太容易)。不過還好有非常好的開源的軟件項目管理工具來幫助我們做這些無關於程序本身設計與架構的瑣碎的工作,那就是maven!
如果你對maven還不太瞭解,可以參看這裏。
《hadoop:the definitive guide 3th》的源碼包可以從github中下載到,如下圖所示:
下載完後解壓縮,其根目錄下有一個README文件,通過它我們可以得到關於這本書源碼的使用方法(基本上所有的開源項目發行包的根目錄下都有這麼一個文件,也有可能叫做INSTALL,這是瞭解安裝某個開源軟件最直接最簡單的方法了),其中有說明了構建此書源碼所需的所有依賴組件的段落:
This version of the code has been tested with: * Hadoop 1.0.4/0.22.0/0.23.0/2.0.2-alpha * Avro 1.5.4 * Pig 0.9.1 * Hive 0.8.0 * HBase 0.90.4 * ZooKeeper 3.4.2 * Sqoop 1.4.0-incubating * MRUnit 0.8.0-incubating |
爲此,我們需要先安裝上述依賴性組件(注意安裝時候的版本儘量與上述版本的要求一致,MRUnit我沒有安裝),在linux下安裝軟件通常情況下是非常簡單的,我們只需要把相應的安裝包解壓縮,然後在~/.bashrc中配置該安裝包的解壓路徑到環境變量即可(此安裝方法適合於大部分linux下軟件的安裝,不過具體安裝方法還需參看README或INSTALL文件),各個依賴性組件的安裝方法在本書中相應章節都有介紹,還有疑惑的同學可以到書中自行查看,下面僅以Hbase爲例:
% tar xzf hbase-x.y.z.tar.gz |
執行完上述步驟後,輸入hbase命令出現如下界面,就說明已經安裝成功了(別忘了執行". ~/.bashrc"使配置的環境變量生效):
下面我們就可以切換到本書的源文件包的根目錄下使用maven來構建本書的jar包了:
% mvn package -DskipTests -Dhadoop.version=1.0.4
執行過這條命令後就是很長時間的等待,maven會到他的中央倉庫和apache的倉庫中下載所需要的jar包和pom.xml文件(這個過程可能要持續大約一個小時,要確保你的電腦已經連上網絡,下載完成後在~/.m2/repository文件夾中——也即本地倉庫——可以看到已經下載下來的jar包和pom文件),然後再逐個構建根目錄下pom.xml中配置的modules,等所有的工作做完就可以看到已經打包的各個jar包,從而可以很方便的在命令行使用hadoop命令測試書中的代碼了。
轉載請註明出處:http://www.cnblogs.com/beanmoon/archive/2012/12/27/2835531.html