一、添加插件

将hadoop-eclipse-plugin-2.7.5.jar放入eclipse的plugins文件夹中

二、在Windows上安装Hadoop2.7.5

版本最好与Linux集群中的hadoop版本保持一致

1、将hadoop-2.7.5-centos-6.7.tar.gz解压到Windows上的C盘software目录中

2、配置hadoop的环境变量

HADOOP_HOME=C:\software\hadoop-2.7.5

Path=C:\software\hadoop-2.7.5\bin

3、修改Hadoop安装目录C:\software\hadoop-2.7.5\etc\hadoop中hadoop-env.cmd

4、查看Hadoop版本

5、添加Windows支持文件

因为安装的Hadoop编译的版本是CentOS6.7的版本,在Windows上运行需要添加文件

1)winutils.exe 放在windows平台中你安装的hadoop的bin目录下

2)  hadoop.dll 放在windows操作系统的 c:/windows/system32目录下

6、重新启动eclipse

三、eclipse中的配置

1、重新启动eclipse,打开windows->Preferences的Hadoop Map/Reduce中设置安装目录

2、打开Windows->Open Perspective中的Map/Reduce,在此perspective下进行hadoop程序开发

3、打开Windows->Show View中的Map/Reduce Locations,如下图右键选择New Hadoop location…新建hadoop连接。

4、配置相关信息

5、配置成功之后再右侧显示如下

四、创建HDFS项目

1、创建一个java project

2、添加jar包这里使用第二种

有三种方式可以往项目中添加jar依赖:

  1)直接创建一个lib文件夹,然后放入对应的依赖包,最后add build path

    优点:移植方便
    缺点:项目臃肿

  2)在eclipse中创建user libarary, 然后引入

    优点:解决了不同项目中的相同jar的重复依赖问题, 不是直接放入,是引入的方式
    缺点:移植不方便

  3)最后直接使用maven管理jar依赖

    完美解决方案:使用maven 我们在项目中只需要编写好:pom.xml文件即可

目前只是操作HDFS,所以只需要引入common和HDFS相关的jar包即可。

Hadoop的common、hdfs、MapReduce、yarn的相关jar包的位置在安装目录的C:\software\hadoop-2.7.5\share\hadoop文件夹中,各自文件夹下的jar包是核心jar包,lib下的jar包是核心jar包的依赖jar包,都需要引入

hdfs的jar包用相同的方法引入

这样项目就成功引入了common和hdfs相关的jar包

3、创建测试类

package cn.study.hdfs;

import java.net.URI;

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path; public class TestHdfsDemo1 { public static void main(String[] args) throws Exception {
Configuration conf = new Configuration();
FileSystem fs = FileSystem.get(new URI("hdfs://hadoop1:9000"),conf,"hadoop");
//System.out.println(fs instanceof DistributedFileSystem);//true fs.copyFromLocalFile(new Path("D:/abc.txt"), new Path("/a/"));
fs.close();
} }

测试之前

测试之后

Hadoop学习之路(八)在eclispe上搭建Hadoop开发环境的更多相关文章

  1. 如何在Windows上搭建Android开发环境

    Android开发越来越火,许多小伙伴们纷纷学习Android开发,学习Android开发首要任务是搭建Android开发环境,由于大家 主要实在Windows 上开发Android,下面就详细给大家 ...

  2. 在WP8上搭建cocos2d-x开发环境

    在WP8上搭建cocos2d-x开发环境 转自:https://github.com/koowolf/cocos-docs/blob/master/manual/framework/native/in ...

  3. 如何在 macOS 上搭建 PHP 开发环境

    如何在 macOS 上搭建 PHP 开发环境 Linux, Nginx, MySQL, PHP $ php --version $ php -v # PHP 7.3.11 (cli) (built: ...

  4. Windows系统上搭建Clickhouse开发环境

    Windows系统上搭建Clickhouse开发环境 总体思路 微软的开发IDE是很棒的,有两种:Visual Studio 和 VS Code,一个重量级,一个轻量级.近年来VS Code越来越受欢 ...

  5. 在 macOS 上搭建 Flutter 开发环境

    下载 Flutter SDK flutter官网下载:https://flutter.io/sdk-archive/#macos 若上述链接无法访问,可通过GitHub下载 https://githu ...

  6. Scala 学习之路(一)—— Scala简介及开发环境配置

    一.Scala简介 1.1 概念 Scala全称为Scalable Language,即“可伸缩的语言”,之所以这样命名,是因为它的设计目标是希望伴随着用户的需求一起成长.Scala是一门综合了面向对 ...

  7. 树莓派上搭建arduino开发环境

    -------------还是博客园上面的格式看这舒服,不去新浪了------------- 为什么要在树莓派上开发arduino呢?总要把树莓派用起来嘛,不然老吃灰. 树莓派使用SSH时没有图形界面 ...

  8. 在Mac上搭建ReactNative开发环境

    1.安装Homebrew,   Mac系统的包管理器,用于安装NodeJS和一些其他必需的工具软件. /usr/bin/ruby -e "$(curl -fsSL https://raw.g ...

  9. ubuntu14.04上搭建android开发环境

    这几天心血来潮,想在ubuntu上写写android软件.所以就上网找些资料在ubuntu上搭建android环境.结果要么时不完整的,要么就是过时的. 所以我把我搭建android环境的过程写下了, ...

随机推荐

  1. Windows标准控件

    学习目的 学习创建, 使用Windows标准控件(按钮, 滚动条, 静态控件, 列表框, 编辑框, 组合框); 学习使用子窗口控件操作函数(EnableWindow, MoveWindow, SetW ...

  2. 各种IDE的使用

    sharpdevelop http://blog.sina.com.cn/s/blog_d1001bff0101di7p.html

  3. ManualResetEvent

    ManualResetEvent是C#中一个比较常用的工具,可用于线程间通信,实现一种类似信号量的功能(不知道我这样描述是否恰当,有可能不是“类似”,而“就是”通过信号量来实现的,因为我也是最近才知道 ...

  4. js程序中美元符号$是什么(转)

    $符号在php中是表示变量的特征字符, 在js中它也有很多作用, 一般我们用来命名一个函数名称,获取id的1.首先可以用来表示变量, 比如变量 var s='asdsd'或var $s='asdasd ...

  5. mac,macbook 连接蓝牙耳机播放音乐断断续续

    个人的情况是, mac本连的网线,用的无线鼠标, 屋里80多号人都在用笔记本,应该也有好多开着无线的东西 解决方法: mac 或macbook 连接蓝牙耳机播放音乐断断续续的原因, 在网上找了好多方法 ...

  6. ios 9 http

    记录: <key>NSAppTransportSecurity</key>     <dict>    <key>NSAllowsArbitraryLo ...

  7. Java集合 -- HashSet 和 HashMap

    HashSet 集合 HashMap 集合 HashSet集合 1.1 Set 接口的特点 Set体系的集合: A:存入集合的顺序和取出集合的顺序不一致 B:没有索引 C:存入集合的元素没有重复 1. ...

  8. 泪奔的ie

    ie是不支持text 空白节点的所以想用这个写法清除inline-block可以休矣!!!$('.container').contents().filter(function() { return t ...

  9. LeetCode题解之Single Number

    1.题目描述 2.分析 3.代码 int singleNumber(vector<int>& nums) { map<int,int> m; for( vector&l ...

  10. EJB系列 - EJB基础知识

    本人博客文章网址:https://www.peretang.com/basic-knowledge-of-ejb/ 什么是EJB 可移植的, 可重用的, 可伸缩的业务应用程序的平台 为什么选择EJB ...