运行猪时出错:找不到pig-core-h2.jar。做了-Dhadoopversion = 23 jar',然后再试一次

时间:2015-06-07 17:11:51

标签: hadoop ant apache-pig

所以我昨晚安装了猪,解压缩了tar,并编辑了我的.bashrc以包含:

export PIG_HOME=/usr/lib/pig/pig-0.12.0 
export PATH=$PATH:$PIG_HOME/bin 

昨晚我跑猪-h,运行了一些加载命令等等。它运行得很好。今天早上我尝试运行任何猪命令,它给了我以下错误:

Cannot locate pig-core-h2.jar. do 'ant -Dhadoopversion=23 jar', and try again

所以我尝试运行ant -Dhadoopversion=23 jar,我明白了:

-bash: ant: command not found

我的问题是:为什么它会在昨晚运行,但是今天早上它不会工作?我究竟做错了什么?而且 - 我必须以某种方式重新安装蚂蚁?我去了/ usr / local / bin /并且没有ant目录。我也运行ant -version并且找不到命令。

但为什么它昨晚有效呢?现在有什么不同?

1 个答案:

答案 0 :(得分:0)

这个错误来自猪二进制文件:

 if [ -f $PIG_HOME/pig.jar ]; then
    PIG_JAR=$PIG_HOME/pig.jar
else
    PIG_JAR=`echo $PIG_HOME/pig-?.!(*withouthadoop).jar`
fi

if [ -n "$PIG_JAR" ]; then
    CLASSPATH="${CLASSPATH}:$PIG_JAR"
else
    echo "Cannot locate pig.jar. do 'ant jar', and try again"
    exit 1
fi

因此,您的变量$PIG_HOME未定义,并且由于某种原因无法自动设置。只是做:

export PIG_HOME=/path_to_your_pig