【问题标题】:Error in installation of Hive 2.1.0 on Hadoop 2.7.2 - Pseudo distributed mode在 Hadoop 2.7.2 上安装 Hive 2.1.0 时出错 - 伪分布式模式
【发布时间】:2017-01-13 04:09:26
【问题描述】:

我遵循了 Apache Hadoop 安装链接,并且可以将其与 PIG 一起安装。他们都工作正常。

以下是配置: Hadoop:2.7.2 蜂巢:2.1.0 机器:Ubuntu 14.04 LTS 64 位 Java:第 9 版

现在我尝试根据此链接 [https://cwiki.apache.org/confluence/display/Hive/AdminManual+Installation#AdminManualInstallation-InstallingfromaTarball].

安装 Apache Hive 2.1.0

...并开始测试 Hive CLI 的执行,但每次它都会抛出以下错误并退出。

SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/usr/local/hive/lib/log4j-slf4j-impl-2.4.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/local/hadoop/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]
Exception in thread "main" java.lang.ClassCastException: jdk.internal.loader.ClassLoaders$AppClassLoader (in module: java.base) cannot be cast to java.net.URLClassLoader (in module: java.base)
at org.apache.hadoop.hive.ql.session.SessionState.<init> (SessionState.java:374)
at org.apache.hadoop.hive.ql.session.SessionState.<init>(SessionState.java:350)
at org.apache.hadoop.hive.cli.CliSessionState.<init>(CliSessionState.java:60)
at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:663)
at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:641)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(java.base@9-ea/Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(java.base@9-ea/NativeMethodAccessorImpl.java:62)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(java.base@9-ea/DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(java.base@9-ea/Method.java:533)
at org.apache.hadoop.util.RunJar.run(RunJar.java:221)
at org.apache.hadoop.util.RunJar.main(RunJar.java:136)

..但有一个问题。如果我调用 Beeline CLI,那么它工作正常。

您能帮忙吗: 一个。 Beeline CLI 和 Hive CLI 是否相同或有任何特定差异? 湾。帮助在我的机器上安装/配置 Hive

【问题讨论】:

    标签: hive slf4j hadoop-2.7.2


    【解决方案1】:

    A : Beeline CLI VS Hive CLI https://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.4.2/bk_dataintegration/content/beeline-vs-hive-cli.html

    B:根据: http://openjdk.java.net/projects/jigsaw/talks/prepare-for-jdk9-j1-2015.pdf

    Java 9 不再使用 java.net.URLClassLoader。

    但是,我能够通过将 Hive 指向 JDK8 来解决该问题。

    ** 我才刚刚开始使用 HIVE/HADOOP...也许有人可以证明一个更好的解释或解决方法,以便我们能够使用 JDK9...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多