远程调试HBase,报错:org.apache.hadoop.hbase.MasterNotRunningException; 必须对其进行捕获或声明以便抛出

本文详细解析了远程调试HBase时遇到的MasterNotRunningException异常及HBaseAdmin使用警告,提供了两种解决方案:一是通过throws Exception声明异常,二是使用try-catch结构捕获并处理异常。

一、问题描述

远程调试HBase,创建配置文件,建立管理员Admin,但是创建时报错:

org.apache.hadoop.hbase.MasterNotRunningException

在代码运行后报错,我运行之后报错:

Warning:(22, 28) java: org.apache.hadoop.hbase.client.HBaseAdmin中的HBaseAdmin(org.apache.hadoop.conf.Configuration)已过时
Error:(22, 28) java: 未报告的异常错误org.apache.hadoop.hbase.MasterNotRunningException; 必须对其进行捕获或声明以便抛出

如下图:

二、问题原因

经过查找,发现java对于异常,会沿着方法的调用栈逐层回溯,寻找处理这一异常的代码。找到能够处理这类异常的方法后,运行时系统把当前异常对象交给这个方法进行处理,这一过程称为捕获(catch)异常。这样保证程序可以正常运行。

三、解决办法

1.方法一

在main函数加上throws Exception

2.方法二

try{		
	HBaseAdmin admin = new HBaseAdmin(conf);
}
catch(Exception e){
	System.out.println("HBaseAdmin error");
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值