如何在类路径中包含hbase-site.xml

我目前正在尝试获取我的HBase代码以使用hbase-site.xml中指定的设置。似乎使用的是默认设置,而不是hbase-

site.xml配置文件中指定的设置。自更新文件以来,我已经重新启动了HBase群集,但是它仍未使用我更新的配置文件。

我正在使用的群集有2个节点,其中一个是主节点。两个节点上的配置文件都将主节点的IP指定为Zookeeper仲裁。我相信问题在于我没有使用hbase-

site.xml中指定的设置,因为如果我通过代码将zookeeper仲裁设置为与hbase-

site.xml中相同的值,则代码可以正常运行,但是第二个节点无法运行如果未通过代码指定仲裁,请与主服务器联系。

config = HBaseConfiguration.create();

config.set("hbase.zookeeper.quorum", masterNodeIP);

我将非常感谢有关如何将hbase-

site.xml包含到我的代码的类路径中的说明或链接。我在Windows机器上使用Eclipse进行开发,并在Linux集群上安装了HBase环境。由于依赖关系,我通常使用Eclipse编译代码。

理想情况下,我希望集群中的每个节点都使用其自己的配置文件。

提前致谢!

回答:

如果使用默认值而不管您将其放在什么位置hbase-site.xml,则可能意味着它已被类路径中的另一个文件覆盖。这很有可能,因为conf-

site.xmlhbase jar中已经有一个。

要解决此问题,请编辑类路径以hbase-site.xml在类路径的末尾添加包含您的目录,以确保没有任何内容可以覆盖它。就像是:

java -cp $CLASSPATH:/usr/lib/hbase/conf path.to.your.Mainclass

如果太晦涩,我建议您从命令行而不是在Eclipse中运行它,以便您可以完全确定类路径中的内容。

希望能有所帮助。

以上是 如何在类路径中包含hbase-site.xml 的全部内容, 来源链接: utcz.com/qa/416953.html

回到顶部