进行HDFS编程实践的简单案例
public class HDFSFileIfExist {
public static void main(String[] args) {
// TODO Auto-generated method stub
try{
String fileName = "test";
Configuration conf = new Configuration();
conf.set("fs.defaultFS","hdfs://localhost:9000");
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();
}
}
}
在运行时报错,
Class org.apache.hadoop.hdfs.DistributedFileSystem not found
按照资料添加了相应的jar包,还是报错了,经过网络相关的资料发现Hadoop版本3,1.2中上述报类在
share/hadoop/hdfs 中的 hadoop-hdfs-client-3.1.2.jar
添加hadoop-hdfs-client-3.1.2.jar 后正常运行
案例资料使用的Hadoop版本为2.7.1 自己使用了新版本。在学习过程中应该注意版本的变动了。