Eclipse导入Hadoop源码项目及编写Hadoop程序

Eclipse导入Hadoop源码项目

基本步骤:

1)在Eclipse新建一个java项目【hadoop-1.2.1】

2)将Hadoop压缩包解压目录src下的core,hdfs,mapred,tools,example四个目录copy到上述新建项目的src目录下

3)右击选择 Build Path,修改Java Build Path中【Source】,删除src,添加src/core,src/hdfs,src/mapred,src/tools几个源码目录;

4)在项目中新建一个lib目录,添加项目依赖jar包,导入Hadoop解压缩目录的lib下所有jar包(去掉两个文档),不要漏掉其子目录jsp-2.1中的jar包,导入ant程序lib下所有jar包

5)选择lib目录下的所有jar包,然后右击选择Build Path添加

6)右击项目选择Build Project,重新编译一下工程,发现有错误

7)导入ant包,把ant下的所有jar包导入lib目录下,右击项目选择Build Path-->Libraries-->Add JARs-->Hadoop-1.2.1-->lib就会显示为加进来的包,点击ok结束。

8)在编译一下工程,发现还是有错,接着右击项目选择Build Path-->Libraries找到JRE System Library-->点击Access rules:No rules defined -->选择Edit

Resolution框改为Accessible,Rule Pattern填**/*点ok

至此完成。

二、在Eclipse下编写Hadoop程序

基本步骤:

1)新建Hadoop工程,在工程中新建一个lib目录,copy Hadoop压缩包解压目录lib下的几个jar包,分别为:

其中,Hadoop-core-1.2.1.jar就在Hadoop-1.2.1目录下,然后添加到Build Path路经下

2)添加Hadoop的配置文件

点击项目新建一个文件夹,命名为conf,在里面需要放两个配置文件,分别为core-site.xml和hdfs-site.xml

3)添加单元测试包JUnit4

选择项目右击选择Build Path-->Libraries-->Add Library-->JUnit -->JUnit4-->ok

到此就可以在项目的src下建立包和测试类对hdfs进行增、删、改、查等操作

例:查看hdfs下的某个文件类容并在控制台上显示,代码如下:

package org.chaofn.hadoop.hdfs;

import java.io.InputStream;
import java.net.URL;

import org.apache.hadoop.fs.FsUrlStreamHandlerFactory;
import org.apache.hadoop.io.IOUtils;
import org.junit.Test;

public class HDFSUrlTest {
   //让java程序识别HDFS的URL
    static{
        URL.setURLStreamHandlerFactory(new FsUrlStreamHandlerFactory());
    }
    
    //查看文件内容
    @Test
    public void testRead() throws Exception{
        InputStream in=null;
        //文件路径
        String fileUrl="hdfs://linux.chaofn.org:9000/wc/input/core-site.xml";
        try{
            in=new URL(fileUrl).openStream();
        //将文件内容读出来打印到控制台
        IOUtils.copyBytes(in, System.out, 4096, false);
        }finally{
            IOUtils.closeStream(in);
        }
    }
    
}

 

posted @ 2015-06-11 10:28  SuperVan  阅读(3973)  评论(0编辑  收藏  举报