错误包org.apache.pig.filterfunc不存在

pkln4tw6  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(256)

我可以问一个问题吗,我安装了清管器并进行了配置,但它说 error package org.apache.pig.FilterFunc not exist “当我试图用javac命令编译一个非常简单的java源文件时。
classpath变量设置如下:

/usr/local/hadoop/share/hadoop/common/hadoop-common-2.7.0.jar:/usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-client-core-2.7.0.jar:/usr/local/hadoop/share/hadoop/common/lib/commons-cli-1.2.jar:/usr/local/hadoop/etc/hadoop/:/usr/local/pig/lib/:.:/usr/java/jdk1.8.0_45/jre/lib/rt.jar:/usr/java/jdk1.8.0_45/lib/dt.jar:/usr/java/jdk1.8.0_45/lib/tools.jar:/usr/share/ant/lib/ant-launcher.jar

这两个环境变量设置如下:

export PIG_INSTALL=/usr/local/pig
export PIG_CLASSPATH=$HADOOP_INSTALL/etc/hadoop

isuseragentbot.java文件的源代码如下:

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.HashSet;
import java.util.Set;
import org.apache.pig.FilterFunc;
import org.apache.pig.data.Tuple;

public class IsUseragentBot extends FilterFunc {

    private Set<String> blacklist = null;

    private void loadBlacklist() throws IOException {
        blacklist = new HashSet<String>();
        BufferedReader in = new BufferedReader(new FileReader("blacklist"));
        String userAgent = null;
        while ((userAgent = in.readLine()) != null) {
            blacklist.add(userAgent);
        }
    }

    @Override
    public Boolean exec(Tuple tuple) throws IOException {
        if (blacklist == null) {
            loadBlacklist();
        }
        if (tuple == null || tuple.size() == 0) {
            return null;
        }

        String ua = (String)tuple.get(0);
        if (blacklist.contains(ua)) {
            return true;
        }
        return false;   
    }

}

当我要执行javac isuseragentbot.java来编译源文件时,它总是失败,并且说“error package org.apache.pig not exist”,请任何朋友帮我一下,谢谢!

xkrw2x1b

xkrw2x1b1#

我已经解决了这个问题,除了pig的编译外,它还与pig和hadoop的兼容性有关

相关问题