所以我昨晚安装了猪,解压缩了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并且找不到命令。
但为什么它昨晚有效呢?现在有什么不同?
答案 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