hadoop:filesystem.get方法抛出ioexception

von4xj4u  于 2021-06-03  发布在  Hadoop
关注(0)|答案(1)|浏览(359)

我是hadoop的新手。我试图运行下面的简单代码,但不断得到ioexception的消息 No FileSystem for scheme: file . 我正在ubuntu上运行单节点hadoop2.7.0。我怀疑是配置问题。任何快速的帮助都将不胜感激。我查过了,但没有找到合适的答案。

// Check if a file exists 
public boolean exists() throws IOException {
    boolean isExists = false;       
    try{
        FileSystem hdfs = FileSystem.get(new Configuration());
        Path newPath = new Path(hdfsRoot,file.getName());
        isExists = hdfs.exists(newPath);
        hdfs.close();           
    }catch(IOException ex){
        // log exception and then re-throw
        throw ex;
    }
    return isExists;
}

是filesystem.get方法引发ioexception。

zbq4xfa0

zbq4xfa01#

// Check if a file exists 
        public boolean exists() throws IOException {
            boolean isExists = false;       
            try{
                FileSystem hdfs = FileSystem.get(new URI("hdfs://localhost:9000"),new Configuration());
                Path newPath = new Path("/test.txt");
                isExists = hdfs.exists(newPath);
                hdfs.close();           
            }catch(IOException ex){
                // log exception and then re-throw
                throw ex;
            }
            return isExists;
        }

注意-hdfsroot应该是 hdfs://localhost:9000 file.getname()应该是您的文件名。你的文件位置应该是hdfs://localhost:9000/test.txt
如果不行就告诉我

相关问题