как исправить ошибку add command not found в putty ssh

#bash #shell #hive #hortonworks-sandbox

#bash #оболочка #улей #hortonworks-песочница

Вопрос:

Я создал кластер hadoop с использованием виртуальной машины hortonworks sanbox в Windows. Для этого я использую putty SSH. Я хочу добавить пользовательский jsonserde jar в hive. Я использую add jar command, но получаю сообщение об ошибке типа

-bash: добавить: команда не найдена.

Это для putty ssh

 add jar /usr/hdp/2.5.0.0-1245/hive/lib/json-serde-1.3.7-SNAPSHOT-jar-with-dependencies.jar;
 

Я ожидаю, что это jar будет добавлено к указанному пути.

Ответ №1:

ADD JAR это команда Hive, а не оболочка. Подробнее читайте здесь: HiveResources

Выполните ее в скрипте Hive в том же сеансе перед использованием в запросе.

Пример:

 hive> add jar /usr/lib/sqoop/lib/jtds-1.2.jar;
 

Hive печатает:

 Added [/usr/lib/sqoop/lib/jtds-1.2.jar] to class path
Added resources: [/usr/lib/sqoop/lib/jtds-1.2.jar]
 

Комментарии:

1. как подтвердить, был ли добавлен jar? Это показывает, что jar добавлен в путь к классу. Где я могу увидеть этот путь к классу?

2. list files; Команда Hive покажет все добавленные файлы; Не знаю, как вывести путь к классу из hive.

3. @DeepenPatel Hive выводит сообщение о том, что оно было добавлено в classpath и ресурсы в распределенном кэше. Обновлен ответ с примером

4. @DeepenPatel нашли, как вывести путь к классу из улья: улей> выберите java_method(‘java.lang. System’,’getProperty’,’java.class.path’); Но в моем случае он не печатает недавно добавленный jar, хотя он работает