Hive add file/jar 表示不存在

Hive add file/jar says does not exist

所以我想尝试使用 Hive MAP 和 REDUCE 进行自定义 mapper reducer 查询。

我已经编写自定义映射器和缩减器并将其导出到 jar 文件,并尝试从 Hive CLI 添加它。无论我在哪里复制 jar,我都会收到 does "not exist" 错误。我尝试了以下方法。

我将文件复制到 /usr/local/hive/lib/ 、/usr/local/hive/conf/ 和 /tmp/ 然后在 hdfs 中我也将它复制到 / 、/user/hive/ 和 /user/hive/仓库/

我尝试提供完整路径然后我得到 URL 语法异常

hive> add jar 'hdfs://srimanthpc:9000/SpaceTravel.jar';
Illegal character in scheme name at index 0: 'hdfs://srimanthpc:9000/SpaceTravel.jar'
Query returned non-zero code: 1, cause: java.net.URISyntaxException: Illegal character in scheme name at index 0: 'hdfs://srimanthpc:9000/SpaceTravel.jar'

hive> add jar 'file:///home/anil/Desktop/SpaceTravel.jar';
Illegal character in scheme name at index 0: 'file:///home/anil/Desktop/SpaceTravel.jar'
Query returned non-zero code: 1, cause: java.net.URISyntaxException: Illegal character in scheme name at index 0: 'file:///home/anil/Desktop/SpaceTravel.jar'

如果我给出没有任何模式的路径,它会说它不存在。我也尝试 add file 而不是 add jar

我的配置单元-site.xml 已将 hive.aux.jars.path 设置为 /usr/local/hive/lib/。我尝试将其更改为 file:/// hdfs://localhost:9000/ 但没有更改:(

所有联机文档都说 ADD JAR|FILE 文件路径。但没有人提到那条路是什么。 :(

过去 4 小时以来我一直被困在这里,请帮助我。我错过了什么?

附加信息: 我的 .bashrc

export HIVE_HOME=/usr/local/hive
export PATH=$PATH:$HIVE_HOME/bin
export CLASSPATH=$CLASSPATH:/usr/local/Hadoop/lib/*:.
export CLASSPATH=$CLASSPATH:/usr/local/hive/lib/*:.

从您的查询中删除 '

hive> add jar hdfs://srimanthpc:9000/SpaceTravel.jar;

如果 master 在本地主机上

hive> add jar hdfs://localhost:9000/SpaceTravel.jar;

确保 SpaceTravel.jar 应该在 hdfs 中。

通过使用命令

hdfs dfs -ls /