1

我正在使用 hadoop0.20.2 并尝试在其上安装 Hive 0.10.0。我收到以下错误

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/hive/conf/HiveConf
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:247)
    at org.apache.hadoop.util.RunJar.main(RunJar.java:149)
Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.hive.conf.HiveConf
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    ... 3 more

我没有从之前回答的类似问题中找到解决方案。我将其发布为新的。请查找类路径详细信息:

HADOOP_HOME - /project/hadoop-0.20.2    
HIVE_HOME - /project/hive-0.10.0    
HADOOP_CLASSPATH - /project/hadoop-0.20.2/lib:/project/hive-0.10.0/lib/*.jar

在这上面花了很多时间。任何帮助将不胜感激。在此先感谢

4

1 回答 1

0

尽管 Hive 0.10.0 可以与 Hadoop 0.20.x 一起使用,但您应该避免使用这样的旧版本。

您真的在导出语句中使用连字符(-)吗?还是就在这里?理想情况下,这 3 个导出应该足以让 Hive 运行:

export HADOOP_HOME=/project/hadoop-0.20.2
export HIVE_HOME=/project/hive-0.10.0
export PATH=$HIVE_HOME/bin:$PATH

您如何导出这些变量?添加这些语句~/.bashrc可以正常工作。并且,不要忘记在这些更改之后获取它,

source ~/.bashrc
于 2013-07-09T11:22:10.613 回答