我正在编写一个需要访问dfs的java实用程序,所以我需要一个 Configuration
对象。当我用 Configuration conf = new Configuration()
它似乎找不到dfs,只使用本地文件系统;印刷 fs.getHomeDirectory()
提供我的本地主目录。我尝试过将core site.xml、mapred site.xml、yarn site.xml和hdfs-site.xml作为资源添加到配置中,但没有改变任何东西。我需要做什么才能让它获取hdfs设置?
谢谢你的阅读
2条答案
按热度按时间kuhbmx9i1#
它指向本地文件系统的原因是
core-site.xml
以及hdfs-site.xml
未正确添加。下面的代码片段将帮助您。更新:
上面的选项应该已经工作了,它似乎在配置文件或路径的一些问题。您还有另一个选项,不是使用addresource方法添加配置文件,而是使用set方法。打开core-site.xml文件并找到
fs.defaultFS
. 使用set方法而不是addresource方法。xsuvu9jc2#
要访问文件系统,您必须使用下面概述的配置和文件系统
获取配置示例
获取hdfs示例
在本例中,hadooplocation是您拥有hadoop服务器的位置(可能是localhost)