【问题标题】:Not a valid jar when I was running an example of Hadoop当我运行 Hadoop 示例时不是一个有效的 jar
【发布时间】:2018-01-28 12:04:44
【问题描述】:

我最近在学习 Hadoop。我在 virtualbox 上使用沙盒。我下载了一个带有 mrjob 框架的 python 脚本并运行以下命令,

python RatingsBreakdown.py -r hadoop --hadoop-streaming-jar /usr/hdp/current/hadoop-mapreduce-client/hadoop-streaming-jar u.data

然后得到这个,

Running step 1 of 1...
Not a valid JAR: /usr/hdp/2.6.3.0-235/hadoop-mapreduce/hadoop-streaming-jar

【问题讨论】:

  • 您没有提供实际的 jar 文件。通常以.jar 结尾,而不是-jar...请验证您提供的文件路径确实存在

标签: hadoop mapreduce hadoop-streaming mrjob


【解决方案1】:
lib/hadoop-mapreduce/hadoop-streaming.jar  

这是我电脑里的罐子, 一个有效的 jar 以 .jar 结尾,你的命令有一些错误。 您可以打开文件夹观察(cd foldername)文件名或尝试使用tab完成您的文件名。这样可以减少错误。

【讨论】:

  • 您好,感谢您的帮助!你是对的。我试图在 hadoop 文件夹中找到一个名为 "hadoop-streaming*.jar" 的文件,我找到了一个。我做了一个别名。但是下面的步骤仍然不起作用。我使用的命令是 Python name.py u.data -r hadoop --hadoop-streaming-jar HADOOP-STREAM > result.out 其中 name.py 是我的 mrjob 而 u.data 是数据文件。我有很多 STDERR。它显示:创建临时目录 -> 将本地文件复制到 hdfs -> STDERR 无法加载 native-hadoop 库 -> 等等。顺便说一句,它适用于本地但 hadoop。
  • @Jacob 那一定是另一个问题,您是否使用了 -file 或 -files 参数?我对 Python 不太了解!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多