我正在构建一个客户端,它将一些数据插入到我的HDFS中。因为HDFS位于防火墙后面的集群中,所以我使用HttpFS作为代理来访问它。当我试图读取/写入HDFS时,客户机将使用IOException退出。消息是No FileSystem for scheme: webhdfs。代码非常简单
String hdfsURI = "webhdfs://myhttpfshost:14000/";
Configuration configuration = new Configuration();
FileSystem hdfs = FileSystem.get(new URI(hdfsURI), configuration);它在最后一行崩溃了。我正在使用Maven 3.0.4进行构建,并将Hadoop客户端依赖项2.2.0添加到我的项目中。通过命令行上的curl进行访问很好。
知道为什么会失败吗?
发布于 2014-02-06 09:12:55
类似于this的问题,所以在执行任何FS活动之前,我必须添加以下代码:
configuration.set("fs.webhdfs.impl", org.apache.hadoop.hdfs.web.WebHdfsFileSystem.class.getName());我不知道为什么,但是Maven构建过程似乎有问题.现在它起作用了。
https://stackoverflow.com/questions/21597420
复制相似问题