如何在齐柏林为%hive解释器添加一个jar ?
我试过了
%z.dep('');
add jar <jar path>
齐柏林蜂巢解释器抛出ClassNotFoundException
添加到./interpreter/hive/
通过thrift异常,而add jar
说文件未找到。
怎么做?我正试图通过Amazon添加jsonserde.jar来解析DynamoDB导入。
建议使用齐柏林的依赖管理
可以添加jar文件或maven工件。
依赖jar将被下载到local-repo。
注意:如果jar文件是从源代码编译的,当你再次编译时,它将不会自动同步(再次下载)。你需要进入
interpreter
设置,点击编辑和确定将触发另一个下载到local-repo。
注意:如果你先使用一个版本的scala,再用另一个版本编译。它将报告
Exception in thread “main” java.lang.NoSuchMethodError: scala.reflect.api.JavaUniverse.runtimeMirror
。使用rm -rf local-repo/*
删除已下载的jar
注意:不推荐使用z.dep。
更新于Zeppelin 0.8.x
您现在可以使用%dep
或%spark.dep
(如果使用Spark)加载外部依赖项或jar。文档在zeppline网站:动态依赖加载
%dep z.load("/path/to/your/packages.jar")
或
%spark.dep
z.reset() // clean up previously added artifact and repository
// add maven repository
z.addRepo("RepoName").url("RepoURL")
// add maven snapshot repository
z.addRepo("RepoName").url("RepoURL").snapshot()
// add credentials for private maven repository
z.addRepo("RepoName").url("RepoURL").username("username").password("password")
示例,在Zeppelin 0.8.1中测试:
%dep
z.addRepo("Spark Packages Repo").url("http://dl.bintray.com/spark-packages/maven")
z.addRepo("OSS SNAPSHOTS").url("https://oss.sonatype.org/content/repositories/snapshots")
z.load("org.zouzias:spark-lucenerdd_2.11:0.3.7")
我有0.5.6版本为我以下工作:
%hive
add jar /home/hadoop/jsonserde.jar