前言
- 适用于hadoop3.2以后的版本
- IDEA的安装见我之前的博文
- 你需要安装并配置好了hadoop
- 我的系统是Fedora35,但如果你是其他linux系统也应该适用
- 本教程在Ubuntu 20.04 hadoop3.3.1 伪分布式配置下成功复现
创建一个maven项目
引入jar包
file-project settings-modules 点击加号,到hadoop安装目录/share/hadoop下面把jar包拉上来
需要这些包和目录
复制配置文件
把/opt/hadoop-3.3.1/etc/hadoop/
目录(hadoop安装文件夹下配置文件目录)下的这三个文件复制过来
务必和我的文件目录保持一致
修改debug配置
build-debug-edit configuration
点modify options,add VM options ,然后把下面这句话粘贴进去
-Djava.library.path==/opt/hadoop-3.3.1/lib/native
如果你和我的$HADOOP_HOME
不一样,修改一下目录即可。
这一步也可以用以下方案代替:
在IdeaProjects/hadoopDev/src/main/resources/log4j.properties中加入如下内容
log4j.logger.org.apache.hadoop.util.NativeCodeLoader=ERROR
测试
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
public class hdfsclass {
public static void main(String[] args) {
try {
String filename = "hdfs://master:9000/2.txt";
Configuration conf = new Configuration();
conf.set("fs.hdfs.impl", "org.apache.hadoop.hdfs.DistributedFileSystem");
FileSystem fs = FileSystem.get(conf);
if (fs.exists(new Path(filename))) {
System.out.println("文件存在");
} else {
System.out.println("文件不存在");
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
正常情况是,你和我的运行状况一致且没有报错