如何在齐柏林飞艇上添加一个罐子?

时间:2016-08-10 20:32:51

标签: json jar hive amazon-emr apache-zeppelin

如何在Zeppelin中为%hive解释器添加jar?

我试过了

%z.dep('');
add jar <jar path>

另外zeppelin hive interpreter throws ClassNotFoundException

./interpreter/hive/表示未找到文件时,将add jar添加到thrift异常中。

怎么做?我试图通过亚马逊添加jsonserde.jar来解析DynamoDB导入。

4 个答案:

答案 0 :(得分:7)

推荐的方法是使用Zeppelin的Dependency Management

它可以添加jar文件或maven工件。

依赖jar将被下载到local-repo。

  

注意:如果jar文件是从源代码编译的,那么当你再次编译时,它将不会自动同步(再次下载)。您需要转到interpreter设置,单击编辑,然后确定将触发另一个下载到local-repo。

  

注意:如果您首先使用一个scala版本,并使用另一个版本再次编译。它会报告Exception in thread “main” java.lang.NoSuchMethodError: scala.reflect.api.JavaUniverse.runtimeMirror。删除已下载的jar rm -rf local-repo/*

  

注意:不推荐使用z.dep。

答案 1 :(得分:1)

在Zeppelin 0.8.x上更新

您现在可以使用%dep%spark.dep(如果使用Spark)加载外部依赖项或jar。文档位于zeppline网站上:Dynamic Dependency Loading

%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")

答案 2 :(得分:0)

我的版本为0.5.6以下版本:

$_SESSION

答案 3 :(得分:0)

示例,在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")