首页 > 数据库技术 > 详细

Illegal reflective access by org.apache.hadoop.security.authentication.util.KerberosUtil

时间:2019-11-21 09:03:29      阅读:201      评论:0      收藏:0      [点我收藏+]

在使用Java API操作HBase时抛出如下异常:

Illegal reflective access by org.apache.hadoop.security.authentication.util.KerberosUtil (file:/C:/Users/RYJ/.m2/repository/org/apache/hadoop/hadoop-auth/2.6.5/hadoop-auth-2.6.5.jar) to method sun.security.krb5.Config.getInstance()

技术分享图片

这个异常足足困了我一天,刚开始怀疑是代码问题,最终发现是版本不匹配导致的。

首先我们搭建HBase一定要考虑兼容性问题,即哪个版本的HBase可以和什么版本的JDK匹配,以及可以和什么版本的Hadoop匹配。 我上一篇博客还总结了呢,搭建的时候就忽略了,这也就是学了不知道怎么用吧!汗!  以后实践的时候一定要学会联系学的东西,这样才会避免走很多弯路,不然有数不尽的坑,你就栽吧,时间不允许你这么做的。好了,接下来说解决方案。

解决方法:以前用的JDK8 ,发现不匹配,然后降级为JDK7 就好了。

具体降级步骤:

1.首先登陆JAVA官网下载JDK7到本地

  》》打开https://www.oracle.com/technetwork/java/javase/documentation/index.html

   技术分享图片

 》》可以看到有如下版本

技术分享图片

  》》下载好后,右键项目->Build Path->Configure Build Path... 弹出如下内容,依次按照顺序点击

技术分享图片

 》》Next

 技术分享图片

  》》点击应用即可,然后重新运行,就发现错误终于消失了。。。

技术分享图片

Illegal reflective access by org.apache.hadoop.security.authentication.util.KerberosUtil

原文:https://www.cnblogs.com/shun7man/p/11902212.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!