出现error过程描述:
创建一个Hive表并对其添加一个JSON格式匹配
ROW FORMAT SERDE 'org.apache.hive.hcatalog.data.JsonSerDe'
原因是缺少hive-hcatalog-core-3.1.2.jar的包
尝试以下方式
将~/hive-3.1.2/hcatalog/share/hcatalog/hive-hcatalog-core-3.1.2.jar 放到hive的lib目录下
~为你自己机器的hive安装目录
依然报错
解决方法1:修改hive-env.sh配置文件
$HIVE_HOME/conf下,找到hive-env.sh修改HIVE_AUX_JARS_PATH内容,即添加如下使其在MR时生效
export HIVE_AUX_JARS_PATH=$HIVE_HOME/hcatalog/share/hcatalog/hive-hcatalog-core-1.2.2.jar
解决方法2:在对应的shell脚本中引用路径--auxpath 将hive-hcatalog-core-3.1.2.jar包引入
${HIVE_HOME}/bin/hive --auxpath /opt/apps/hive-3.1.2/hcatalog/share/hcatalog/hive-hcatalog-core-3.1.2.jar -S -e "$sql"