scala - HBaseTableCatalog.tableCatalog 显示错误 - Symbol 'term类路径中缺少 .yetus.audience'。如何解决这个问题?
问题描述
我的输入是HBase
表格。首先我正在加载数据和函数withCatalog
将返回Dataframe
。
def withCatalog(cat: String): DataFrame = {
sqlContext
.read
.options(Map(HBaseTableCatalog.tableCatalog -> cat))
.format("org.apache.hadoop.hbase.spark")
.load()
}
val allrulesDF = withCatalog("personDb:employeeTable")
allrulesDF.show()
HBaseTableCatalog
显示以下错误的行
符号
term <none>.yetus.audience
中缺少classpath.
此符号 是必需的<none>
。确保术语受众在您的类路径中,并检查与-Ylog-classpath
. 如果HBaseTableCatalog.class
针对不兼容的<none>.yetus
.类路径中缺少符号
term org.apache.yetus
。需要此符号<none>
。确保该术语 Yetus 在您的类路径中,并检查与-Ylog-classpath
. 如果HBaseTableCatalog.class
针对不兼容的org.apache
.
解决方案
这是由于 spark 无法加载 hbase jar。
如果你使用 hbase2.1+,你可以在 path 中找到 jar like audience-annotations-*.jar 等等$HBASE_HOME/lib/client-facing-thirdparty
。
并将这些罐子移动到火花罐路径。
推荐阅读
- c - 预期答案是 222,但输出不同
- mysql - 如何从多列的Sql中查找重复记录
- php - Symfony 控制台原则:schema:update --force SQLSTATE[HY000] [1045] 用户 'root'@'localhost' 的访问被拒绝(使用密码:否)
- feathersjs - How to add XSRF header for REST Request from feathers client
- mysql - MySQL最后一行使用游标组装准备好的语句时的挑战
- postgresql - 将列表插入表时更新主键
- java - 减少大量图像的内存使用
- java - Lagom Framework - 如何在同一个服务中混合使用 Java 和 Scala?
- django - Django - 为下拉列表禁用表单选择字段验证
- python - 如何打印 ASCII 艺术?