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);
}
} }

Eclipse导入Hadoop源码项目及编写Hadoop程序的更多相关文章

  1. Hadoop1.x目录结构及Eclipse导入Hadoop源码项目

    这是解压hadoop后,hadoop-1.2.1目录 各目录结构及说明: Eclipse导入Hadoop源码项目: 注意:如果没有ant的包可以去网上下,不是hadoop里面的. 然后如果通过以上还报 ...

  2. eclipse导入Java源码

    eclipse导入Java源码 下载源码包(一般jdk都自带了, 我的没有) src.zip eclipse -> window -> preferences -> JAVA -&g ...

  3. eclipse导入tomcat源码

    我的开发环境:windows7  64位 一.官网下载tomcat源码.在此奉上一站地址:http://archive.apache.org/dist/tomcat/: 二.编译源码生成.jar文件: ...

  4. Eclipse导入Elasticsearch源码

    Eclipse导入Elasticsearch源码的步骤, 基于Elasticsearch 6.2.2的源码版本. 1.安装JDK1.9 Elasticsearch 6.2.2需要JDK1.9编译,否则 ...

  5. Eclipse导入Zookeeper源码Version2017.11.3

    将Zookeeper源码导入Eclipse, Zookeeper源码需要使用ant构建后才能导入Eclipse, 和Solr的源码一样也是使用ant构建的, 大部分可以参考Eclipse导入Solr源 ...

  6. 安装Hadoop系列 — 导入Hadoop源码项目

    将Hadoop源码导入Eclipse有个最大好处就是通过 "ctrl + shift + r" 可以快速打开Hadoop源码文件. 第一步:在Eclipse新建一个Java项目,h ...

  7. spring源码学习(一):eclipse导入spring源码

    前言 对于一门技术,我们最先是了解它(what),然后再熟练的使用它(how)以及何时用它(when),最后肯定要看透它(why).spring作为Java开发人员可以说是最熟悉不过的了,基本每个Ja ...

  8. Eclipse导入Solr源码Version5.5.3

    将Solr的5.5.3版本源码导入Eclipse, Solr源码需要使用ant构建后才能导入Eclipse. 1.JDK安装 Solr要求jdk1.7+: 请参考Windows下安装配置jdk 2.A ...

  9. Eclipse导入Tomcat源码(转)

    想要研究下Tomcat的体系结构或者源码,最好将Tomcat的源码导入到ide中,编写实例进行代码跟踪(debug). 这里参考了网上一些资料,将自己操作过程记个流水账. 准备: 1.Tomcat源码 ...

随机推荐

  1. 用Inferno代替React开发高性能响应式WEB应用

    什么是Inferno Inferno可以看做是React的另一个精简.高性能实现.它的使用方式跟React基本相同,无论是JSX语法.组件的建立.组件的生命周期,还是与Redux或Mobx的配合.路由 ...

  2. 引言关于本博客的ES6

    本博客ES6全部取自于阮一峰的<ES6标准入门>里面掺杂着一些node.js,写这些东西是为了让大家更好的去理解这本书,其实更像是一个教材参考,里面有一些是阮一峰先生可能没有考虑到新手的某 ...

  3. 通过 Sublime Package Control 安装插件后不能用的解决办法

    最近使用 Sublime 写 SASS 的时候需要使用高亮功能,通过 Package Control 安装了相关插件,但是安装之后没有反应,再次打开 Package Control 的时候,已经搜索不 ...

  4. 虚拟机创建流程中neutron代码分析(一)

    前言: 在openstack的学习当中有一说法就是网络占学习时间的百分之七十.这个说法或许有夸大的成分,但不可否认的是openstack中的 网络是及其重要的部分,并且难度也是相当大.试图通过nova ...

  5. yum 命令详解

    一. yum          作用:                     yum 命令是在Fedora 和RedHat 以及SUSE 中基于rpm 的软件包管理器,它可以使系统管理人员交互和自动 ...

  6. 2017双11海量数据下EagleEye的使命和挑战

    摘要: EagleEye作为阿里集团老牌的链路跟踪系统,其自身业务虽不在交易链路上,但却监控着全集团的链路状态,特别是在中间件的远程调用上,覆盖了集团绝大部分的场景,在问题排查和定位上发挥着巨大的作用 ...

  7. python logging一个通用的使用模板

    import os import logbook from logbook.more import ColorizedStderrHandler from functools import wraps ...

  8. 云计算---openstack镜像制作详解

    一:本地部署KVM 1.安装KVM 1.1安装须知 查看CPU是否支持kvm完全虚拟机. [root@LINUX ~]# grep "flags" /proc/cpuinfofla ...

  9. javascript字符串与数组转换汇总

    本文给大家分享的是Js中字符串转换成数组,数组转换成字符串的函数,十分的简单实用,有需要的小伙伴可以参考下. 数组转字符串 1.join()方法 ? 1 2 3 4 var s= ["a&q ...

  10. (class file version 53.0), Java Runtime versions up to 52.0错误的解决方法

    遇到这个错误是在Apache Tomcat上部署应用程序的时候遇到的,具体的错误描述是: java.lang.UnsupportedClassVersionError: HelloWorld has ...