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

时间:2022-05-26 01:42:53

[0007] windows 下 eclipse 开发 hdfs程序样例

环境:

基于以下环境配置好后。

[0008] Windows 7 下 hadoop 2.6.4 eclipse 本地开发调试配置

1. 新建HDFS下载文件类

在已有mapreduce项目中新建类添加如下代码,代码从[0007]中取出小修改

功能:从hdfs下载文件到windows本地

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; /** * 功能: 将 hdfs://ssmaster:9000/data/paper.txt下载到Windows下c:\paper.txt * 调用方式:hadoop jar 打包包名.jar */ public class Hdfs_Download { 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" ); 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 ("c:\\paper.txt"); } catch (FileNotFoundException e) { e.printStackTrace(); } try { IOUtils.copy(in, out); } catch (IOException e) { e.printStackTrace(); } } }

View Code 2.复制hadoop配置好的core-site.xml,,hdfs-site.xml,mapred-site.xml到src目录下

如图

3 运行

右键类名,运行为 java application,正常会执行成功

异常

参考[0009]hadoop异常处理,一般都是配置文件没有

总结:

比[0007]打包执行方便一些。

存在问题:

如果打包到linux下执行,需要修改路径

如何在eclipse中,直接跑程序,下载hdfs到linxu本地

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