hadoop3.x HDFS java第一个例子 作者:马育民 • 2021-02-12 23:32 • 阅读:10324 # idea 创建maven工程 略 [idea创建maven工程必须修改idea配置](https://www.malaoshi.top/show_1IXSDwcJyst.html "idea创建maven工程必须修改idea配置") # 修改pom.xml 添加如下依赖: ``` junit junit 4.13.1 org.apache.hadoop hadoop-common 3.0.3 org.apache.hadoop hadoop-client 3.0.3 org.apache.hadoop hadoop-hdfs 3.0.3 ``` 在 pom.xml 点击右键 -> 【maven】 -> 【reimport】 导入依赖 # log4j.properties 打印 hadoop debug 信息 在 `resources` 文件夹下创建 `log4j.properties` 文件,内容如下: ``` log4j.rootLogger=DEBUG, stdout log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n ``` # 创建测试类 在 `test` -> `java` 下创建类 `top.malaoshi.test.Main`,内容如下: ``` package top.malaoshi.test; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import org.junit.Test; import java.net.URI; public class Main { @Test public void mkdir() throws Exception { Configuration config = new Configuration(); // 1 获取文件系统。设置集群url、操作用户 FileSystem fs = FileSystem.get(new URI("hdfs://hadoop1:8020"), config, "root"); // 2 创建目录 boolean res=fs.mkdirs(new Path("/test")); System.out.println("result:"+res); // 3 关闭 fs.close(); } } ``` ### 解释:hdfs://hadoop1:8020 `hdfs://hadoop1:8020` 是 linux hadoop `$HADOOP_HOME/etc/hadoop/core-site.xml` 中的配置 - **端口号要一致** ### 解释:root 在 `hadoop-env.sh` 最下面配置的用户就是 `root`,如下: ``` export HDFS_DATANODE_USER=root export HDFS_NAMENODE_USER=root export HDFS_SECONDARYNAMENODE_USER=root export YARN_RESOURCEMANAGER_USER=root export YARN_NODEMANAGER_USER=root ``` # hadoop查看 ### web方式 http://hadoop1:9870 ### 命令方式 执行下面命令: ``` hadoop fs -ls / ``` 可以看到已经创建的文件夹 原文出处:http://malaoshi.top/show_1IXaCj4VLZj.html