猪在终端不工作

Posted

技术标签:

【中文标题】猪在终端不工作【英文标题】:Pig not working in terminal 【发布时间】:2013-04-26 11:48:28 【问题描述】:

我是猪新手,我已经从

下载了

http://apache.techartifact.com/mirror/pig/pig-0.10.1/ 现在,当我在我的 linux 终端中写 pig 时,它会显示以下消息

2013-04-26 17:14:53,641 [main] INFO  org.apache.pig.Main - Logging error messages to: /home/vishal/Downloads/pig_1366976693634.log
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/mapred/JobConf
    at org.apache.pig.Main.run(Main.java:587)
    at org.apache.pig.Main.main(Main.java:111)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.hadoop.util.RunJar.main(RunJar.java:208)
Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.mapred.JobConf
    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 sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    ... 7 mor

是我必须包含 jar 还是其他问题

谢谢

【问题讨论】:

试试pig -x local,默认模式是mapreduce,需要安装hadoop。 pig.apache.org/docs/r0.10.0/start.html 【参考方案1】:

您需要包含 mapred java 存档,具体取决于您使用的 MapReduce 版本,MRv1 或 MRv2 (=YARN)。

仅供参考:java.lang.NoClassDefFoundError 总是关于一个被遗忘/输入错误的 JAR 文件

【讨论】:

以上是关于猪在终端不工作的主要内容,如果未能解决你的问题,请参考以下文章

外键约束不通过程序工作。但与终端一起工作

从终端运行的颤振工作,而手动不工作

Mac 终端 Git 不工作

猪在 3 月份给出错误结果的天数

终端上送工作日期和主机系统日期不一致 是为啥

不熟悉工作的网友表现收集:不会打开终端窗口