解决"Class org.apache.hadoop.hdfs.distributedfilesystem not found"问题

SCHLAU_tono 2019-11-05 11:58:40
Hadoop版本:2.8.1
问题描述:在测试文件上传的时候,遇到 java.lang.ClassNotFoundException类的异常:


一开始以为是jar包不全,把所有hdfs文件下的jar包都丢进去了,依然报错,而且最后在hadoop-hdfs-client-2.8.1中找到了这个类


但是这里的类名是DistributedFileSystem而命令台显示的错误是distributedfilesystem,为什么会出现这种情况??

逐步排查发现应该是下面这句引发的错误

FileSystem fs=FileSystem.get(URI.create(hdfsPath),conf);



查了相关的Filesystem.get()的API文档,没有看到哪里需要distributedfilesystem

麻烦大神来看看,卡在这里几天了
...全文
3216 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
SCHLAU_tono 2019-11-06
  • 打赏
  • 举报
回复
谢谢大佬讲解,的确问题是出在这里,终于解决这个问题了
4qw 2019-11-05
  • 打赏
  • 举报
回复
你直接添加conf.set("fs.hdfs.impl", "org.apache.hadoop.hdfs.DistributedFileSystem")就行
4qw 2019-11-05
  • 打赏
  • 举报
回复
是不是你再配置conf是配置错了,应该是 conf.set("fs.hdfs.impl", "org.apache.hadoop.hdfs.DistributedFileSystem"),
但却配置成了org.apache.hadoop.hdfs.distributedFileSystem,大小写的区别;
使用的位置是在FileSystem.get()中createFileSystem方法中的getFileSystemClass,读取配置属性fs.hdfs.impl,获取Class

20,811

社区成员

发帖
与我相关
我的任务
社区描述
Hadoop生态大数据交流社区,致力于有Hadoop,hive,Spark,Hbase,Flink,ClickHouse,Kafka,数据仓库,大数据集群运维技术分享和交流等。致力于收集优质的博客
社区管理员
  • 分布式计算/Hadoop社区
  • 涤生大数据
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧