本文记录Ant编译MapReduce程序的过程。
程序使用《Hadoop MapReduce Cookbook》中的示例代码。
1、安装Ant
Ant项目主页:http://ant.apache.org/
下载二进制安装包,例如apache-ant-1.9.4-bin.tar.gz,上传到Hadoop集群环境上,解压即完成安装。
[huser@master apache-ant-1.9.4]$ pwd /home/huser/hadoop/apache-ant-1.9.4
2、下载示例程序
下载地址: http://www.packtpub.com/code_download/11101
上传并解压。
[huser@master hadoop]$ cd hadoop-1.2.1/72870S_Code/ [huser@master 72870S_Code]$ ll 总用量 40 drwxrwxr-x 4 huser huser 4096 4月 2 18:07 chapter1 drwxrwxr-x 4 huser huser 4096 4月 2 18:07 chapter10 drwxrwxr-x 4 huser huser 4096 4月 2 18:07 chapter2 drwxrwxr-x 5 huser huser 4096 4月 2 18:07 chapter3 drwxrwxr-x 3 huser huser 4096 4月 2 18:07 chapter4 drwxrwxr-x 5 huser huser 4096 4月 2 18:07 chapter5 drwxrwxr-x 6 huser huser 4096 4月 2 18:07 chapter6 drwxrwxr-x 3 huser huser 4096 4月 2 18:07 chapter7 drwxrwxr-x 5 huser huser 4096 4月 2 18:07 chapter8 drwxrwxr-x 3 huser huser 4096 4月 2 18:07 chapter9
3、编译程序
[huser@master HDFS_Java_API]$ pwd /home/huser/hadoop/hadoop-1.2.1/72870S_Code/chapter2/HDFS_Java_API [huser@master HDFS_Java_API]$ ll 总用量 8 -rw-rw-r-- 1 huser huser 794 4月 27 2012 build.xml drwxrwxr-x 2 huser huser 4096 4月 2 18:07 src
运行Ant编译
[huser@master HDFS_Java_API]$ /home/huser/hadoop/apache-ant-1.9.4/bin/ant Buildfile: /home/huser/hadoop/hadoop-1.2.1/72870S_Code/chapter2/HDFS_Java_API/build.xml compile: [mkdir] Created dir: /home/huser/hadoop/hadoop-1.2.1/72870S_Code/chapter2/HDFS_Java_API/build [javac] Compiling 1 source file to /home/huser/hadoop/hadoop-1.2.1/72870S_Code/chapter2/HDFS_Java_API/build [jar] Building jar: /home/huser/hadoop/hadoop-1.2.1/72870S_Code/chapter2/HDFS_Java_API/HDFSJavaAPI.jar BUILD SUCCESSFUL Total time: 59 seconds
编译成功,JAR包和CLASS
[huser@master HDFS_Java_API]$ ll 总用量 16 drwxrwxr-x 2 huser huser 4096 4月 18 03:06 build -rw-rw-r-- 1 huser huser 794 4月 27 2012 build.xml -rw-rw-r-- 1 huser huser 1199 4月 18 03:06 HDFSJavaAPI.jar drwxrwxr-x 2 huser huser 4096 4月 2 18:07 src [huser@master HDFS_Java_API]$ cd build [huser@master build]$ ll 总用量 4 -rw-rw-r-- 1 huser huser 1447 4月 18 03:06 HDFSJavaAPIDemo.class
4、运行程序
[huser@master HDFS_Java_API]$ ~/hadoop/hadoop-1.2.1/bin/hadoop jar HDFSJavaAPI.jar HDFSJavaAPIDemo Warning: $HADOOP_HOME is deprecated. hdfs://master:9000 Welcome to HDFS Java API!!!