Java Hive驱动程序连接线上Hadoop中的ClassNotFoundException导致NoClassDefFoundError?

Java Hive驱动程序连接线上Hadoop中的ClassNotFoundException导致NoClassDefFoundError?,java,jdbc,hadoop,hive,classnotfoundexception,Java,Jdbc,Hadoop,Hive,Classnotfoundexception,通常我从谷歌搜索解决方案开始,但这个错误似乎以前没有发生过 Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/util/Shell at org.apache.hadoop.hive.conf.HiveConf$ConfVars.findHadoopBinary(HiveConf.java:906) at org.apache.hadoop.hive.conf.HiveConf

通常我从谷歌搜索解决方案开始,但这个错误似乎以前没有发生过

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/util/Shell
    at org.apache.hadoop.hive.conf.HiveConf$ConfVars.findHadoopBinary(HiveConf.java:906)
    at org.apache.hadoop.hive.conf.HiveConf$ConfVars.<clinit>(HiveConf.java:237)
    at org.apache.hive.jdbc.HiveConnection.isHttpTransportMode(HiveConnection.java:221)
    at org.apache.hive.jdbc.HiveConnection.openTransport(HiveConnection.java:138)
    at org.apache.hive.jdbc.HiveConnection.<init>(HiveConnection.java:123)
    at org.apache.hive.jdbc.HiveDriver.connect(HiveDriver.java:105)
    at java.sql.DriverManager.getConnection(DriverManager.java:571)
    at java.sql.DriverManager.getConnection(DriverManager.java:215)
    at com.merck.ghh.ingestion.HiveTableSetup.tableSetup(HiveTableSetup.java:31)
    at com.merck.ghh.ingestion.HiveTableSetup.main(HiveTableSetup.java:546)
Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.util.Shell
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    ... 10 more
其他人似乎指出这与不在依赖项中包含hadoop核心有关,但hadoop核心似乎不存在于hadoop 2.X中。我专门在Hadoop 2.1.0.2.0.5.0-67和Hive0.12.0中工作。在这个错误之前,我的配置单元依赖项在某个时候被破坏了,但我把它们放回了,接下来发生了这个错误。我想知道这是不是像忘记依赖项那样简单,但我没有找到我可能缺少的依赖项

在此方面的任何帮助都将不胜感激

Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.util.Shell  
在使用Hadoop 2.X时,需要下载或
和类路径,以避免
ClassNotFoundException

你是对的,我以前用过


有关更多信息,请访问

尝试将JDBC连接器jar复制到$HIVE_HOME/lib/文件夹中。我也面临着类似的问题,复制jar文件对我来说很有效

我已经将此文件从安装目录链接到配置单元/lib目录。非常感谢你的意见。这是一个简单的问题!非常感谢。
Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.util.Shell