Hadoop学习之路(八)在eclispe上搭建Hadoop开发环境
一、添加插件
将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开发环境的更多相关文章
- 如何在Windows上搭建Android开发环境
Android开发越来越火,许多小伙伴们纷纷学习Android开发,学习Android开发首要任务是搭建Android开发环境,由于大家 主要实在Windows 上开发Android,下面就详细给大家 ...
- 在WP8上搭建cocos2d-x开发环境
在WP8上搭建cocos2d-x开发环境 转自:https://github.com/koowolf/cocos-docs/blob/master/manual/framework/native/in ...
- 如何在 macOS 上搭建 PHP 开发环境
如何在 macOS 上搭建 PHP 开发环境 Linux, Nginx, MySQL, PHP $ php --version $ php -v # PHP 7.3.11 (cli) (built: ...
- Windows系统上搭建Clickhouse开发环境
Windows系统上搭建Clickhouse开发环境 总体思路 微软的开发IDE是很棒的,有两种:Visual Studio 和 VS Code,一个重量级,一个轻量级.近年来VS Code越来越受欢 ...
- 在 macOS 上搭建 Flutter 开发环境
下载 Flutter SDK flutter官网下载:https://flutter.io/sdk-archive/#macos 若上述链接无法访问,可通过GitHub下载 https://githu ...
- Scala 学习之路(一)—— Scala简介及开发环境配置
一.Scala简介 1.1 概念 Scala全称为Scalable Language,即“可伸缩的语言”,之所以这样命名,是因为它的设计目标是希望伴随着用户的需求一起成长.Scala是一门综合了面向对 ...
- 树莓派上搭建arduino开发环境
-------------还是博客园上面的格式看这舒服,不去新浪了------------- 为什么要在树莓派上开发arduino呢?总要把树莓派用起来嘛,不然老吃灰. 树莓派使用SSH时没有图形界面 ...
- 在Mac上搭建ReactNative开发环境
1.安装Homebrew, Mac系统的包管理器,用于安装NodeJS和一些其他必需的工具软件. /usr/bin/ruby -e "$(curl -fsSL https://raw.g ...
- ubuntu14.04上搭建android开发环境
这几天心血来潮,想在ubuntu上写写android软件.所以就上网找些资料在ubuntu上搭建android环境.结果要么时不完整的,要么就是过时的. 所以我把我搭建android环境的过程写下了, ...
随机推荐
- js小练习-移除数组中的元素
移除数组 arr 中的所有值与 item 相等的元素,直接在给定的 arr 数组上进行操作,并将结果返回 代码: <!DOCTYPE HTML><html> <he ...
- 一文总结学习 Python 的 14 张思维导图
本文主要涵盖了 Python 编程的核心知识(暂不包括标准库及第三方库,后续会发布相应专题的文章). 首先,按顺序依次展示了以下内容的一系列思维导图:基础知识,数据类型(数字,字符串,列表,元组,字典 ...
- sublime3中如何快速生成html头部信息
前提要安装Emmet 插件:已经结束了啊,不要以为下面的操作跟问题有关,下面是具体的生成头部信息方法 输入下边加粗的缩写,然后Tab,就可以了: 生成html4.01 Transitional用 ht ...
- Reset GitLab Root Password
重置gitlab管理员密码 Log into your server with root privileges. Then start a Ruby on Rails console. Start t ...
- Android Studio 快速实现上传项目到Github(详细步骤)
前言: 本文主要讲解如何将Android Studio项目上传至GitHub,在此之前,先介绍几个概念. Android Studio:是谷歌推出一个Android集成开发工具,基于IntelliJ ...
- Android解析WindowManager(三)Window的添加过程
前言 在此前的系列文章中我们学习了WindowManager体系和Window的属性,这一篇我们接着来讲Window的添加过程.建议阅读此篇文章前先阅读本系列的前两篇文章. 1.概述 WindowMa ...
- Android组件系列----Activity组件详解
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/3 ...
- Linux 运维工程师一定要知道的六类好习惯和23个教训
一.线上操作规范 1.测试使用当初学习Linux的使用,从基础到服务到集群,都是在虚拟机做的,虽然老师告诉我们跟真机没有什么差别,可是对真实环境的渴望日渐上升,不过虚拟机的各种快照却让我们养成了各种手 ...
- leveldb开篇
因为工作的需求,最近看了一些项目的源码,包括nginx.tair.leveldb,一直看了下来都没有写东西的习惯,虽然作了不少记录,但都是只有自己才能看懂的笔记. 好多次都说开始写blog,锻炼一下自 ...
- MySQL中如何实现select top n
用惯了access mssql server的朋友,可能在用mysql查询前N条记录时,习惯的使用select top n 形式的语句,在这里说明一下,mysql没有此语法,mysql用limit来实 ...