|   | 1 | [[PageOutline]] | 
                  
                          |   | 2 |  | 
                  
                          |   | 3 | ◢ <[wiki:III130907/Lab6 實作六]> | <[wiki:III130907 回課程大綱]> ▲ | <[wiki:III130907/Lab8 實作八]> ◣ | 
                  
                          |   | 4 |  | 
                  
                          |   | 5 | = 實作七 Lab 7 = | 
                  
                          |   | 6 |  | 
                  
                          |   | 7 | {{{ | 
                  
                          |   | 8 | #!html | 
                  
                          |   | 9 | <div style="text-align: center;"><big style="font-weight: bold;"><big>在 Hadoop4Win 環境下編譯 MapReduce 程式<br/>Compiling Hadoop MapReduce Java Program in Hadoop4Win</big></big></div> | 
                  
                          |   | 10 | }}} | 
                  
                          |   | 11 |  | 
                  
                          |   | 12 | {{{ | 
                  
                          |   | 13 | #!text | 
                  
                          |   | 14 | 以下練習,請在本機的 Hadoop4Win 環境操作。 | 
                  
                          |   | 15 | }}} | 
                  
                          |   | 16 |  | 
                  
                          |   | 17 | == 練習一 : 字數統計(基礎篇) == | 
                  
                          |   | 18 | == Practice 1 : Word Count (Basic) == | 
                  
                          |   | 19 |  | 
                  
                          |   | 20 |  * 首先請回到家目錄,建立一個程式專案的目錄,假設取名為 my-code | 
                  
                          |   | 21 | {{{ | 
                  
                          |   | 22 | ~$ cd | 
                  
                          |   | 23 | ~$ mkdir my-code | 
                  
                          |   | 24 | ~$ cd my-code | 
                  
                          |   | 25 | }}} | 
                  
                          |   | 26 |  * 接著,建立一個目錄 src 用來存放 Java 原始碼。並且下載 build.xml 到 my-code 目錄中。 | 
                  
                          |   | 27 | {{{ | 
                  
                          |   | 28 | ~/my-code$ mkdir -p src | 
                  
                          |   | 29 | ~/my-code$ wget http://www.classcloud.org/hadoop4win/build.xml | 
                  
                          |   | 30 | }}} | 
                  
                          |   | 31 |  * 然後將您要編譯的 Java 原始碼置於 src 目錄中(開啟檔案總管,存到 c:\hadoop4win\home\${user}\my-code\src) | 
                  
                          |   | 32 |  * 這裡我們提供一個 WordCount.java 作為示範。 | 
                  
                          |   | 33 | {{{ | 
                  
                          |   | 34 | ~/my-code$ wget http://www.classcloud.org/hadoop4win/WordCount.java -O src/WordCount.java | 
                  
                          |   | 35 | }}} | 
                  
                          |   | 36 |  * 執行 ant 指令開始編譯,結果會出現在 output.jar ,並且會產生對應的 javadoc 文件在 doc 目錄中。 | 
                  
                          |   | 37 | {{{ | 
                  
                          |   | 38 | ~/my-code$ ant | 
                  
                          |   | 39 | }}} | 
                  
                          |   | 40 |  * 用 Hadoop 執行剛剛產生的 output.jar 當作 MapReduce Job。 | 
                  
                          |   | 41 |  * 註:output.jar 因為'''沒有設定 manifest '''所以'''必須指定要跑的 Main Class 名稱''' | 
                  
                          |   | 42 | {{{ | 
                  
                          |   | 43 | ~/my-code$ /opt/hadoop/bin/hadoop jar output.jar WordCount input my-output | 
                  
                          |   | 44 | }}} |