IDE:Eclipse

第一个程序操作HDFS。


 

1.         创建Java工程

打开eclipse,选择“File -> New -> Java Project”,新建一个“Java Project”,进入“New Java
Project”对话框,将“Project name”设置为“Demo”,

选中“DFSOperator”,并单击右键,选择“New -> Class”菜单,新建“Name”为“Test”<com.fora>
的class,并选中自动创建main 函数,

2.         配置编译参数

<可选,如果已经将Hadoop插件装入Eclipse>=================================

1、将\hadoop-0.20.2\hadoop-0.20.2\contrib\eclipse-plugin\下的hadoop-0.20.2-eclipse-plugin.jar拷贝到eclipse-SDK-3.3.2-win32\eclipse\plugins\下。

2、启动eclipse,点击Window->Show View->Other,点击MapReudce Tools->Map/Reduce Locations

3、点击蓝色的大象,出现下图,配置:
Host是Master的IP地址、9001是mapred.job.tracker端口、9000是fs.default.name的端口

=================================================================

下面开始配置“Build Path”,选中“DFSOperator”,单击右键,点击下图所示菜单“Build
Path -> Configure Build Path”,进入“Java Build Path”配置界面。
选择“Libraries”标签页,点击右侧的“Add External JAR”按钮,将安装好的“hadoop-0.20.0-core.jar”,”commons-logging-1.0.4.jar“添加进来。 

进入的“Test.java”文件编辑界面,将“Test.java”的内容修改成如下:


 

package com.fora;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FSDataOutputStream;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;

public class Test{

public static void main(String[] args) { 

  Configuration conf = new Configuration();
try{
      FileSystem fs = FileSystem.get(conf);
      Path f = new Path("hdfs:/// HadoopDemo.txt");
      FSDataOutputStream os = fs.create(f, true);
int i = 0;
for (i = 0; i < 100; ++i){
    os.writeChars("this is a test for HDF
    }
   os.close();
        }catch (Exception e) { 
   e.printStackTrace();
  }
}
}

  

3.         编译生成JAR:Export导出即可。

右键“Demo”项目,选择“Build Project”,编译项目工程,编译“Test.java”
后,生成Test.class 文件

右键项目,选择“Export”:

进入“Export”对话框:

选中“JAR file”,然后点击“Next”按钮

,设置好JAR 包的文件名和存放位置,然后点击“Finish”按钮,生成
HadoopDemo.jar 文件

然后将HadoopDemo.jar 文件上传到Hadoop Master 节点。

4.         测试运行、假设Hadoop 安装在/usr/hadoop 目录下,HadoopDemo.jar 存放在hadoop/bin 目录下,按照下图所示的五步依次进行操作:

首先进入Hadoop 的bin 目录,然后依次完成如下的五步操作:
(1) 查看当前目录,检查HadoopDemo.jar 是否存在:ls
(2) 查看Hadoop 根目录下是否存在HadoopDemo.txt 文件:./hadoop fs -ls /,有则先删除
(3) 运行HadoopDemo.jar,以生成HadoopDemo.txt 文件:
   ./hadoop jar ./HadoopDemo.jar com.fora.Test
(4) 再查看Hadoop 根目录下是否存在HadoopDemo.txt 文件:./hadoop fs -ls /
(5) 检查HadoopDemo.txt 文件的内容:./hadoop fs -cat /HadoopDemo.txt