HDFS的java客户端操作代码(Windows上面打jar包,提交至linux运行)

Posted Mr.Zhao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HDFS的java客户端操作代码(Windows上面打jar包,提交至linux运行)相关的知识,希望对你有一定的参考价值。

 1.通过java.net.URL实现屏幕显示demo1文件的内容

 1 package Hdfs;
 2 import java.io.InputStream;
 3 import java.net.URL;
 4 import org.apache.hadoop.fs.FsUrlStreamHandlerFactory;
 5 import org.apache.hadoop.io.IOUtils;
 6 
 7 public class JarDemo {
 8     static{
 9         URL.setURLStreamHandlerFactory(new FsUrlStreamHandlerFactory());
10     }
11     public static void main(String[] args) {
12         InputStream in =null;
13         try {
14             in= new URL(args[0]).openStream();
15             IOUtils.copyBytes(in, System.out, 4096,false);
16         } catch (Exception e) {
17             e.printStackTrace();
18         } finally{
19             IOUtils.closeStream(in);
20         }
21         
22     }
23 }
显示hdfs中一个文件的内容

2.打包,将上述java文件打成jar包

(1)鼠标右键export

  

(2)找到jar file项

  

(三)输入jar包存放的路径

    

(4)将jar包所在的主类在下面选择框选中,如果此部不做,需要在linux运行jar包的时候显示指明主类。如com.hdfs

    

3.打包好在指定位置存放,通过CRT传输至linux上对应的/usr/local/txtnode中

 如下图运行此jar包 。

  

问题所在:由于输入的参数是目录而非文件报错。 

解决此问题:(1)准备一个demo1文件上传至hdfs中

  

 (2)上传至HDFS命令 

  

 (3)再次执行便可显示demo1里面的内容 

 

以上是关于HDFS的java客户端操作代码(Windows上面打jar包,提交至linux运行)的主要内容,如果未能解决你的问题,请参考以下文章

HDFS客户端的权限错误:Permission denied

HDFS客户端的权限错误:Permission denied

hadoop集群配置和在windows系统上运用java操作hdfs

HDFS的Java客户端操作代码(HDFS的查看创建)

Java连接hdfs指定用户名

Hadoop开发重点HDFS 的 API 操作