Hadoop_JAVA操作HDFS

之前已经在虚拟机上安装好了hadoop,下面纪录下用java操作hdfs和中间遇到的一些问题,使用的是伪分布式模式

一 本地配置hadoop环境变量

此处默认已经具备jdk环境.
将hadoop的压缩包解压到任意目录

在环境变量中配置HADOOP_HOME变量,值为hadoop所在的目录

二、编写测试类

import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileSystem; import org.junit.Before; import org.junit.Test;  import java.net.URI;   public class JavaToHDFS {     // 定义类变量:文件系统,用来链接hdfs     FileSystem fs = null;      //预处理,链接hdfs     @Before     public void init() throws Exception {         fs = FileSystem.get(new URI(hdfs://192.168.10.102:9000), new Configuration(), root);     }      @Test     public void mkdir() {         System.out.println(fs);     } }

测试会发现会报一个这样的错误

这是因为在本地运行hadoop程序需要依赖一些依赖库和工具类,需要工具的可以直接搜索你对应Hadoop版本的winutils.exe

下载完后吧他bin里面的文件全部拷贝到Hadoop的bin文件中

添加完后就可以正常运行了