hive-jdbc -__- standalone.jar的正确位置是什么?

时间:2016-02-15 02:15:33

标签: java hadoop jar hive bigdata

关于设置配置单元的指南0.14: http://www.ishaanguliani.com/content/hive-0140-setup-ubuntu

建议如果出错:

Logging initialized using configuration in jar:file:/usr/local/hive/lib/hive-common-0.14.0.jar!/hive-log4j.properties
SLF4J: Class path contains multiple SLF4J bindings.

遇到文件hive-jdbc-0.14.0-standalone.jar必须从$ HIVE_HOME / lib /

移出

但是当我直线运行时,它会出错,因为文件不存在:

$ $HIVE_HOME/bin/beeline -u jdbc:hive2://localhost:10000
ls: cannot access /usr/local/hive/lib/hive-jdbc-*-standalone.jar: No such file or directory

做什么是正确的?

1 个答案:

答案 0 :(得分:3)

您可以执行以下任何操作

RCA :在hive2.1中,$ {HIVE_LIB}中不存在hive-jdbc - * - standalone.jar文件,而是{$ HIVE_HOME} / jdbc目录。

**系统规格** hive-2.1二进制文件 java1.8 CentOS Linux版本7.1.1503(核心)

可能的解决方案

  1. 将jar文件复制到脚本所需的目录中。 很容易,但我不喜欢保留多个文件

    bash# cp ${HIVE_HOME}/jdbc/hive-jdbc-2.1.0-standalone.jar ${HIVE_HOME}/lib/hive-jdbc-2.1.0-standalone.jar

    1. 创建一个指向jar文件的链接,指向脚本所需的目录
      (我的首选方法) bash# ln -s ${HIVE_HOME}/jdbc/hive-jdbc-2.1.0-standalone.jar ${HIVE_HOME}/lib/hive-jdbc-2.1.0-standalone.jar

    2. 编辑文件$ {HIVE_HOME} /bin/ext/beeline.sh

      bash# vi +27 ${HIVE_HOME}/bin/ext/beeline.sh

    3. 编辑

      jdbcStandaloneJarPath=`ls ${HIVE_LIB}/hive-jdbc-*-standalone.jar`
      
      
      to
      
      jdbcStandaloneJarPath=`ls ${HIVE_HOME}/jdbc/hive-jdbc-*-standalone.jar`