赞
踩
问题:虚拟机用eclipse运行Java代码时报错(我确定不是jar包的问题,如果你们有出现这种情况建议先检查自己eclipse导入的jar包完不完整)
- Exception in thread "main" org.apache.hadoop.fs.UnsupportedFileSystemException: No FileSystem for scheme "hdfs"
- at org.apache.hadoop.fs.FileSystem.getFileSystemClass(FileSystem.java:3281)
- at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:3301)
- at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:124)
- at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:3352)
- at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:3320)
- at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:479)
- at org.apache.hadoop.fs.Path.getFileSystem(Path.java:361)
- at org.apache.hadoop.mapreduce.lib.input.FileInputFormat.addInputPath(FileInputFormat.java:542)
- at zuoye.WordCount.main(WordCount.java:33)
(图片忘了截图)
虚拟机:Ubuntu16.0.4
Hadoop:3.1.3
弄了几天都没有解决,最后删机重练才发现是我之前练习完Hadoop集群要转为伪分布式的时候没有清空Hadoop文件夹里的logs和tmp文件夹并格式化namenode。
于是回到终端关闭dfs服务(重点:记得先关闭Hadoop服务,不然datanode会和namenode不匹配)并清空logs和tmp文件夹
- stop-dfs.sh
- cd /usr/local/hadoop
- rm -r logs
- rm -r tmp
- mkdir logs
- mkdir tmp
并格式化nomenode
hadoop namenode -format
有回答Y/n的时候一律回答Y
格式化完回去eclipse刷新程序再运行,完美解决问题!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。