目的:

学习使用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. Bootstrap基本CSS样式

    一.简介.使用 1.简介 Bootstrap 来源于 Twitter,是一款基于 Html.Css.JavaScript 的前端UI框架.可以方便.快速的开发web界面. 教程:https://www ...

  2. Node JS爬虫: 阮老师网站背景图

    小白,轻喷,本文教你三分钟入门爬虫 前言 有一天发现,阮一峰老师的博客图片很好看,想收藏一下,因为几百张,一张张下载太慢,朋友推荐了个谷歌插件(Fatkun)确实挺好用的,这之后就对爬虫有了兴趣,这个 ...

  3. OpenCV:图像平滑和图像模糊处理

    导包: import numpy as np import cv2 import matplotlib.pyplot as plt def show(image): plt.imshow(image) ...

  4. Java-环境搭建(Mac版)

    对于开发人员来说,电脑的性能很重要,所以换了Mac后需要重新配置开发环境,网上对Windows系统的Java环境配置有很多,所以,这里就不多介绍.现在记录一下在Mac电脑上的Java环境配置. 众所周 ...

  5. ansible 流程控制

    ansible 流程控制 使用when判断主机名 - hosts: rsync_server tasks: - name: Install rsyncd Server yum: name: rsync ...

  6. [20191112]oracle共享连接模式端口.txt

    [20191112]oracle共享连接模式端口.txt --//如果使用共享服务模式,你可以发现每次重启数据库对应的端口号会发生变化.# netstat -tunlp | egrep "A ...

  7. MySQL中if的写法

    关键词:IF --if 判断,如果 device_num 的值为1,则赋值为100,反之为200 SELECT district, shop_name, IF ( device_num , , ) A ...

  8. 国内Maven仓库--阿里云Aliyun仓库地址及设置

    aliyun Maven:http://maven.aliyun.com/nexus/#view-repositories          需要使用的话,要在maven的settings.xml 文 ...

  9. Python-判断回文

    # 回文单词是从左到右和从右到左读相同的单词. # 例如:"detartrated"和"evitative"是回文 str_in = input('Input: ...

  10. 小计C++中的引用和vector

    声明引用的同时必须对其初始化,否则系统会报错,所以我们是无法这样使用 vector<int &> vec; 这条语句会报错,同时引用不是定义一个新的变量或对象,因此内存不会为引用开 ...