我正在尝试在本地计算机上以伪分布式模式运行Hadoop和Hive。我已经运行了hadoop但是当我尝试运行Hive时,它会给我以下错误
`Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/thrift/TException
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:266)
at org.apache.hadoop.util.RunJar.main(RunJar.java:149)
Caused by: java.lang.ClassNotFoundException: org.apache.thrift.TException
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
... 3 more `
我试图调试问题,但找不到遗漏的内容。 我的HADOOP_HOME,HADOOP_CLASSPATH正在正确设置。此外,HADOOP_CLASSPATH包含libthrift-0.9.0.jar,其中包含上述错误中显示的类。
有什么建议我在这里缺少什么?
答案 0 :(得分:0)
你准备好了吗?并确保您也设置了这些变量:
export HIVE_HOME=/path/to/your/hive/folder
export PATH=$HIVE_HOME/bin:$PATH
为避免这些问题,请使用Hadoop和Hive的最新稳定版本。