重载的配置构造函数包括以下内容,它们都不涉及指定hadoop配置目录。
public Configuration() { /* compiled code */ }
public Configuration(boolean loadDefaults) { /* compiled code */ }
private Configuration(org.apache.hadoop.conf.Configuration other, boolean storeResource) { /* compiled code */ }
public Configuration(org.apache.hadoop.conf.Configuration other) { /* compiled code */ }
那么,如何做到这一点呢?
该用例在运行伪分布式hadoop集群的机器上运行单元测试。
默认情况下,单元测试将尝试访问本地文件系统,而不是本地hdfs。因此,有用的方法是将配置指向一组非本地的core-*.xml文件,这些文件是为指定的$hadoop\u home/conf目录中的伪分布式模式配置的。
1条答案
按热度按时间jdg4fx2g1#
一个笨拙的解决方法:cConfiguration类有一个方法允许在“如下所示”之后添加资源:
因此可以使用指向每个*-site.xml的fileinputstream。