Hadoop集群中pig工具的安装过程记录

在Hadoop环境中安装了pig工具,安装过程中碰到了一些问题,在此做一下记录:

  主要安装流程参考:http://www.cnblogs.com/yanghuahui/p/3768270.html

主要碰到的问题:

   由于是从直接下载的pig包,所以在mapreduce模式中会报:

     Hadoop: java.lang.IncompatibleClassChangeError: Found interface org.apache.hadoop.mapreduce.JobContext, but class was expected

根据步骤,需要运行:ant clean jar-all -Dhadoopversion=23重新编译,通过yum安装完ant之后,运行命令发现报错:Buildfile: build.xml

BUILD FAILED
/home/hadoop/pig-0.12.1/build.xml:720: Problem: failed to create task or type scriptdef
Cause: the class org.apache.tools.ant.taskdefs.optional.script.ScriptDef was not found.
        This looks like one of Ant's optional components.
Action: Check that the appropriate optional JAR exists in
        -/usr/share/ant/lib
        -/home/hadoop/.ant/lib
        -a directory added on the command line with the -lib argument

Do not panic, this is a common problem.
The commonest cause is a missing JAR.

This is not a bug; it is a configuration problem

Total time: 0 seconds

而且此时,jdk环境应为ant原因已经变成Openjdk1.6。

研究Ant的官方文档,通过运行命令:

#ant -diagnostics

发现通过yum安装的ant环境,缺少了所有的的option Task,造成build.xml中使用optionTask时报错。

官方文档提示,可以通过ant -f fetch.xml -Ddest=option来安装缺少的Option Task。

但是从本地的环境中发现,缺少基本的文件fetch.xml ,造成无法运行。

因此删除原有环境

rpm -e --nodeps java-1.5.0-gcj-1.5.0.0-29.1.el6.x86_64
rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-6.1.13.4.el6_5.x86_64
rpm -e --nodeps java-1.6.0-openjdk-devel-1.6.0.0-6.1.13.4.el6_5.x86_64
rpm -e --nodeps tzdata-java-2014e-1.el6.noarch
rpm -e --nodeps java_cup-0.10k-5.el6.x86_64
rpm -e --nodeps ant-1.7.1-13.el6.x86_64

从官网下载二进制包来配置ant环境:

#tar zxvf apache-ant-1.9.4-bin.tar.gz

在环境变量中设置:

export ANT_HOME=/home/hadoop/apache-ant-1.9.4
PATH=$PATH:$ANT_HOME/bin


作者:sdjnzqr
出处:http://www.cnblogs.com/sdjnzqr/
版权:本文版权归作者和博客园共有
转载:欢迎转载,但未经作者同意,必须保留此段声明;必须在文章中给出原文连接;否则必究法律责任
posted @ 2014-07-28 11:05  正正杂说  阅读(521)  评论(0编辑  收藏  举报