1

我需要什么 *.jar 才能使我的 groovysh 与 hbase 1.1.2 一起工作我正在尝试运行一个简单的脚本并且以下导入失败 - groovy:000>

import org.apache.hadoop.hbase.client.Put

错误 java.lang.NoClassDefFoundError: org/apache/hadoop/hbase/io/HeapSize at java_lang_Runnable$run.call (Unknown Source) groovy:000>

import org.apache.hadoop.hbase.client.Result

错误 java.lang.NoClassDefFoundError: org/apache/hadoop/hbase/CellScannable at java_lang_Runnable$run.call (Unknown Source) import org.apache.hadoop.hbase.util.Bytes 导入定义无效:'org.apache.hadoop.hbase .util.Bytes'; 原因:启动失败:script14891462389401754287428.groovy:1:无法解析类 org.apache.hadoop.hbase.util.Bytes @ 第 1 行第 1 列。

   import org.apache.hadoop.hbase.util.Bytes

我已经在我的 -classthpath 中加载了 hbase-client.jar。只需要编写一个简单的脚本来放置和递增 hbase 变量并通过 groovysh 执行。

编辑 1 我现在得到这个 groovy:000> groovy.grape.Grape.grab(group:'org.apache.hbase', module:'hbase-client', version:'1.3.0') ERROR java.lang.RuntimeException : 抓葡萄时出错——[下载失败:junit#junit;4.12!junit.jar,下载失败:org.slf4j#slf4j-api;1.7.7!slf4j-api.jar,下载失败:org.slf4j#slf4j- log4j12;1.6.1!slf4j-log4j12.jar] groovy:000> groovy.grape.Grape.grab('org.apache.hbase:hbase-client:1.3.0')

4

1 回答 1

0

hbase客户端有很多依赖:

http://grepcode.com/snapshot/repo1.maven.org/maven2/org.apache.hbase/hbase-client/1.1.1/

你不能只拿一个罐子把它粘在类路径上,你需要一大堆它们

我不使用 groovysh,但你应该能够做到:

:grab 'org.apache.hbase:hbase-client:1.3.0'

这应该拉下hbase-client它的所有依赖关系到你的类路径

于 2017-03-14T14:39:27.110 回答