目的:

学习使用hdfs 的java命令操作

相关:

进化:

[b0010] windows 下 eclipse 开发 hdfs程序样例 (二)

[b0011] windows 下 eclipse 开发 hdfs程序样例 (三)

环境:

hadoop2.6.4 伪分布式

win7 + eclipse Version: Luna Service Release 1 (4.4.1)

1. 新建项目

1.1 新建java项目  Hadoop_伪分布式

1.2 导入hadoop 2.6.4 的jar包

项目名字上右键->属性->Java构建路径->添加库->用户库,创建用户库 hadoop2.6

点击用户库hadoop2.6->添加外部jar  依次将hadoop2.6.4 解压目录下的所有jar包,及对应子目录 lib下jar包导入

share\hadoop\common

share\hadoop\hdfs

share\hadoop\yarn

share\hadoop\mapredude

2.新建类,编写如下代码

通过流的方式,从hdfs 下载一个文件到linux 本地,

 /**
* 功能: 将 hdfs://ssmaster:9000/data/paper.txt下载到Linux下/home/hadoop/paper.txt
* 调用方式:hadoop jar 打包包名.jar
*/
package hadoop.hdfs; import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException; import org.apache.commons.compress.utils.IOUtils;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FSDataInputStream;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path; public class Test_Fun { public static void main(String[] args) { Configuration conf =new Configuration(); FileSystem fs = null;
Path src = null;
FSDataInputStream in = null;
FileOutputStream out = null; src = new Path("hdfs://ssmaster:9000/data/paper.txt" ); try { fs = FileSystem.get(conf) ;
in = fs.open(src); } catch (IOException e) {
e.printStackTrace();
} try {
out = new FileOutputStream ("/home/hadoop/paper.txt");
} catch (FileNotFoundException e) {
e.printStackTrace();
} try {
IOUtils.copy(in, out);
} catch (IOException e) {
e.printStackTrace();
} }
}

备注:

"hdfs://ssmaster:9000/data/paper.txt"  中前面的路径取自 hadoop安装后的配置文件 core-site.xml里的

参数 <name>fs.defaultFS</name><value>hdfs://ssmaster:9000</value>

3.导出jar包、执行

右键项目名字->导出->java/jar文件 ->指定jar路径名字->指定main类 ->完成

上传到linux服务器,执行程序,查看结果

hadoop@ssmaster:~/java_program$ hadoop jar hadoop_hdfs_download.jar
hadoop@ssmaster:~$ ls
Desktop Downloads hadoop-2.6..tar.gz java_program paper.txt Pictures spark-2.0.-bin-hadoop2..tgz Videos
Documents examples.desktop hdfs-site.xml Music park-2.0.-bin-hadoop Public Templates

总结:

步骤麻烦啰嗦。

其他可选方案,需要研究

windows下的eclipse 中的程序运行,直接操作hadoop

在linux中安装eclipse,运行程序

[b0007] windows 下 eclipse 开发 hdfs程序样例的更多相关文章

  1. [b0011] windows 下 eclipse 开发 hdfs程序样例 (三)

    目的: 学习windows 开发hadoop程序的配置. [b0007] windows 下 eclipse 开发 hdfs程序样例 太麻烦 [b0010] windows 下 eclipse 开发 ...

  2. [b0010] windows 下 eclipse 开发 hdfs程序样例 (二)

    目的: 学习windows 开发hadoop程序的配置 相关: [b0007] windows 下 eclipse 开发 hdfs程序样例 环境: 基于以下环境配置好后. [b0008] Window ...

  3. windows环境下Eclipse开发MapReduce程序遇到的四个问题及解决办法

    按此文章<Hadoop集群(第7期)_Eclipse开发环境设置>进行MapReduce开发环境搭建的过程中遇到一些问题,饶了一些弯路,解决办法记录在此: 文档目的: 记录windows环 ...

  4. Windows下Eclipse提交MR程序到HadoopCluster

    作者:Syn良子 出处:http://www.cnblogs.com/cssdongl 欢迎转载,转载请注明出处. 以前Eclipse上写好的MapReduce项目经常是打好包上传到Hadoop测试集 ...

  5. iDempiere 使用指南 windows下eclipse开发环境配置及打包下载

    Created by 蓝色布鲁斯,QQ32876341,blog http://www.cnblogs.com/zzyan/ iDempiere官方中文wiki主页 http://wiki.idemp ...

  6. windows下eclipse远程连接hadoop集群开发mapreduce

    转载请注明出处,谢谢 2017-10-22 17:14:09  之前都是用python开发maprduce程序的,今天试了在windows下通过eclipse java开发,在开发前先搭建开发环境.在 ...

  7. windows下eclipse+hadoop2

    windows下eclipse+hadoop2.4开发手册 1.解压下载的hadoop2.4,到任意盘符,例如D:\hadoop-2.4.0. 2.设置环境变量 ①新建系统变量,如下所示. ②将新建的 ...

  8. windows下spark开发环境配置

    http://www.cnblogs.com/davidwang456/p/5032766.html windows下spark开发环境配置 --本篇随笔由同事葛同学提供. windows下spark ...

  9. Windows下OpenFOAM开发及使用环境配置指南 (1)【转载】

    转载自:http://openfoam.blog.sohu.com/158614863.html *************************************************** ...

随机推荐

  1. 自学_DOM<五>

    类库DOM DOM(document object medol)文档对象模型. DOM就是HTML页面的模型,将每个标签都做为一个对象,JavaScript通过调用DOM中的属性.方法就可以对网页中的 ...

  2. 简单学习HTML

    最近突然就对静态页面很有兴趣,主要是看到几个比较酷炫的页面效果,也想自己做一下,但是我的前端页面就是菜鸡,还停留在html+css+jquery的简单使用上,而且还忘记得差不多了! 而且我感觉前端比后 ...

  3. 个人项目开源之Django图书借阅系统源代码

    Django写的模拟图书借阅系统源代码已开源到码云 源代码

  4. 程序运行时间测试 - 使用libc 中 time 函数 实现秒级的运行时间检测

    c 标准库中,有time 函数,可以返回 1970年1月1日 开始到现在的秒数,我们可以调用两次的时间差来计算程序运行时间: https://github.com/yaowenxu/Workplace ...

  5. 使用docker-compose安装wordpress

    一.建立应用的目录 mkdir my_wordpress cd my_wordpress 二.创建 docker-compose.yml touch docker-compose.yml;vi doc ...

  6. SPA项目开发之首页导航左侧菜单栏

    1. Mock.js 前后端分离开发开发过程当中,经常会遇到以下几个尴尬的场景: 1. 老大,接口文档还没输出,我的好多活干不下去啊! 2. 后端小哥,接口写好了没,我要测试啊! 前后端分离之后,前端 ...

  7. go语言设计模式之state

    state.go package main import ( "fmt" "math/rand" "os" "time" ...

  8. go语言设计模式之memento

    memento.go package memento import ( "fmt" ) type State struct { Description string } type ...

  9. linux下的set, export, env的区别

    set和export的区别 set可以用来显示所有变量的值,而export能将一个变量导出,在其子shell或子进程也可见 export和env的区别 两者的作用是一样的,只是env是一个外部工具 基 ...

  10. vivado2017.1和modelsim10.5联合仿真

    vivado2017.1和modelsim版本 vivado可在xilinx官网查询匹配的modelsim最低版本,下载modelsim前记得选用合适的版本号,如图 查询地址:https://www. ...