我正在尝试运行连接到HBase的旧项目。
它具有(以及其他依赖项):
<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-client</artifactId>
<version>1.2.0-cdh5.7.2</version>
</dependency>
[当应用程序启动并在createConnection
类中的org.apache.hadoop.hbase.client.ConnectionFactory
方法中到达此代码时:
try{
....
return (Connection) constructor.newInstance(conf, managed, pool, user);
} catch (Exception e) {
throw new IOException(e);
}
引发并捕获异常,说:
java.lang.NoClassDefFoundError: org/apache/hadoop/crypto/key/KeyProviderTokenIssuer
所以我在Google中寻找此类的KeyProviderTokenIssuer
,但没有找到它的来源。
为什么系统试图使用此类,我应该从哪里得到它? Crypto
包不属于hbase-client
依赖关系,在https://mvnrepository.com/中看不到
这里是否可能存在某些库不匹配?
我正在Windows上运行。可以关联吗?
我正在尝试运行连接到HBase的旧项目。它具有(除其他依赖性外):
执行几个步骤后,我能够解决此问题: