No FileSystem for scheme: file 解决方法

程序打成jar包后,放到服务器上去执行,程序能够按预期去正确执行,但看到如下错误还是很不爽:

2014-08-13 17:16:49 [WARN]-[main]-[org.apache.hadoop.hbase.util.DynamicClassLoader] Failed to identify the fs of dir /tmp/hbase-ecm2/hbase/lib, ignored
java.io.IOException: No FileSystem for scheme: file
at org.apache.hadoop.fs.FileSystem.getFileSystemClass(FileSystem.java:2385) ~[ecm.jar:na]
at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2392) ~[ecm.jar:na]
at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:89) ~[ecm.jar:na]
at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2431) ~[ecm.jar:na]
at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2413) ~[ecm.jar:na]
at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:368) ~[ecm.jar:na]


【问题分析:】
eclipse打包完成后,jar包中core-site.xml配置文件中不存在以下两个配置项。


fs.hdfs.impl
org.apache.hadoop.hdfs.DistributedFileSystem
The FileSystem for hdfs: uris.


fs.file.impl
org.apache.hadoop.fs.LocalFileSystem
The FileSystem for hdfs: uris.


只要将上面两个配置加到core-site.xml中,然后替换jar包中的xml,重新扔到服务器上,就可以成功运行了。

你可能感兴趣的:(hadoop,hbase)