如何在hive中添加jar文件

iswrvxsc  于 2021-06-02  发布在  Hadoop
关注(0)|答案(5)|浏览(902)

我试图使用addjar hive-contrib-0.10.0.jar命令在hive中添加hive-contrib-0.10.0.jar,但它总是说hive-contrib-0.10.0.jar不存在。
我现在正在使用hdp2.1版本。我还将这个jar文件添加到 /user/root 使用hue文件夹并运行命令

ADD JAR hdfs:///hive-contrib-0.10.0.jar

但它给了我同样的错误 jar file doesn't exist .
有什么办法解决这个问题吗。我应该把这个jar文件保存在哪里,这样它才能成功运行?要使用的命令是什么?

dvtswwa3

dvtswwa31#

我读过上面这些答案,非常有用。我把所有的都整合到一个解决方案中:
将jar放入本地磁盘并授予读/写权限

chmod -R 777 /tmp/json.jar

上载到hdfs文件系统并授予权限:

hdfs dfs -put /tmp/json.jar hdfs://1.1.1.1:8020/jars/   
hdfs dfs -chmod -R 777 hdfs://1.1.1.1:8020/jars/

将jar添加到hive env中。

add jar  hdfs://1.1.1.1:8020/jars/json.jar
rmbxnbpk

rmbxnbpk2#

将jar文件上传到hdfs路径
使用add命令和hdfs full path添加jar文件
例子:

hadoop fs -put ~/Downloads/hive.jar /lib/

打开Hive壳

add jar hdfs:///lib/hive.jar
gmxoilav

gmxoilav3#

如果要永久添加jar,需要执行以下操作。1hive-site.xml(/etc/hive/conf)

<property>
  <name>hive.aux.jars.path</name>
  <value>file:///mnt1/hive-jars/hive-contrib-2.1.1.jar</value>
</property>

将hive-contrib-2.1.1.jar添加到hive-site.xml中配置的路径“/mnt1/hive-jars”
在重启hive-server2之后,这应该是理想的工作方式。三。sudo停止hive-server2 4。sudo启动hive-server2
但有时它不起作用。我不知道为什么你可以用下面这种肮脏的方式。
将jar文件放在下面的路径中,以便hive在重新启动时自动拾取它。
将hive-contrib-2.1.1.jar添加到/usr/lib/hive hcatalog/share/hcatalog
sudo stop配置单元服务器2
sudo启动hive-server2

goucqfw6

goucqfw64#

您必须给出jar的完整路径,而不仅仅是它的名称。
别猜位置。在尝试添加文件系统之前,请检查文件系统是否存在。

6vl6ewon

6vl6ewon5#

我发现你的方法有以下问题。在添加之前,请确保您能够列出本地文件系统或hdfs上存在的文件。
您尝试添加的jar默认位于配置单元类路径中,作为$hive\u home/lib的一部分(在安装了配置单元客户机/服务的本地文件系统上)
另一方面,关于如何在hive中添加jar的问题,我们可以使用本地文件系统或hadoop分布式文件系统(hdfs)添加jar

Add jar file:///root/hive-contrib-0.10.0.jar (Given that you copied this jar on LFS root directory)

Add jar hdfs://<namenode_hostname>:8020/user/root/hive-contrib-0.10.0.jar (Given that you copied to HDFS root home)

相关问题