hadoop - java.lang.NoSuchMethodError : org. apache.hadoop.conf.Configuration.addDeprecation 错误

标签 hadoop

我计划安装 hive0.12hadoop-1.2.1。安装hadoop-1.2.1后,我也配置了hive0.12。但是当我使用 bin/hive 命令时,我得到:

Exception in thread "main" java.lang.NoSuchMethodError: org.apache.hadoop.conf.Configuration.addDeprecation(Ljava/lang/String;Ljava/lang/String;)V
    at org.apache.hadoop.hive.conf.HiveConf.<clinit>(HiveConf.java:77)
    at org.apache.hadoop.hive.common.LogUtils.initHiveLog4jCommon(LogUtils.java:74)
    at org.apache.hadoop.hive.common.LogUtils.initHiveLog4j(LogUtils.java:58)
    at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:639)
    at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:623)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.apache.hadoop.util.RunJar.main(RunJar.java:160)

如何解决问题?

最佳答案

原因

org.apache.hadoop.conf.Configuration.addDeprecation() 方法是从 hadoop 2.3.0 添加的。但是正如您所写,您的 hadoop 发行版是 1.2.1。简而言之,您的 hive 安装和 hadoop 安装不匹配。必须为 hadoop 1.2.1 重建您的配置单元安装。

解决方案

第一选择:将您的 hadoop 安装升级到 2.x.x

这种方法是最简单的方法。由于 hadoop 1.2.1 将不再更新,因此升级您的安装是可行的。删除当前的 hadoop 安装并安装 hadoop 2.5.1(最新版本,截至目前。)。为了安装它,他的 tutorial推荐。

第二个选择:为 hadoop 1.2.1 重建你的配置单元

安装 Hive 时,您必须使用以下命令构建它:

mvn clean install -Phadoop-2,dist

试试这个命令:

mvn clean install -Phadoop-1,dist

使用此命令,将在 packaging/target/apache-hive-0.12-bin 目录中创建输出。用它替换您当前的配置单元安装。

关于hadoop - java.lang.NoSuchMethodError : org. apache.hadoop.conf.Configuration.addDeprecation 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24566157/

相关文章:

hadoop - Sentry 的 Hive 用户模拟

hadoop - Pig 脚本不适用于 MapReduce

Mongodb_Hadoop MapReduce

hadoop - 由于 «p.ermakov» 等无法映射的字符,NodeManager 无法启动

sorting - hadoop 排序比较器类有什么用?

hadoop - 当导入的数据与原始数据不同时,如何给出不同的解决方案?

regex - 使用 SerDe 通过 Hive 解析 Nginx 日志记录

hadoop - 创建 hive UDF

eclipse - Hadoop映射任务失败

java - Hadoop-LZO strange native-lzo library not available 错误