java - 使用命令行在 Windows 中的 hadoop 上运行 wordcount.jar

标签 java hadoop

我试图在 hadoop 上运行一个简单的 wordcount 程序,但遇到如下错误。

 Exception in thread "main" java.io.IOException: Error opening job jar: /user/asiapac/bmohanty6/wordcount/wordcount.jar
        at org.apache.hadoop.util.RunJar.main(RunJar.java:90)
Caused by: java.io.FileNotFoundException: \user\asiapac\bmohanty6\wordcount\wordcount.jar (The system cannot find the path specified)
 at java.util.zip.ZipFile.open(Native Method)
 at java.util.zip.ZipFile.<init>(Unknown Source)
 at java.util.zip.ZipFile.<init>(Unknown Source)
 at java.util.jar.JarFile.<init>(Unknown Source)
 at java.util.jar.JarFile.<init>(Unknown Source)
 at org.apache.hadoop.util.RunJar.main(RunJar.java:88)


我正在使用以下命令。

$ bin/hadoop jar /user/asiapac/bmohanty6/wordcount/wordcount.jar WordCount /user/asiapac/bmohanty6/wo
rdcount/input /user/asiapac/bmohanty6/wordcount/output

我正在使用 Cygwin、hadoop-0.20.2 和伪节点设置。我还将 wordcount.jar 上传到我的 DFS。请参阅下面我的 DFS 屏幕截图

enter image description here

我能够在 eclipse 中成功运行相同的 wordcount 程序。我根据 this 通过 eclipse 创建了 wordcount.jar 文件教程。我在网上搜索了很多但无法理解如何解决这个问题。请帮助我。

最佳答案

需要在user前添加/:

bin/hadoop jar /user/asiapac/bmohanty6/wordcount/wordcount.jar WordCount /user/asiapac/bmohanty6/wordcount/input /user/asiapac/bmohanty6/wordcount/output

这使它们成为完全合格的路径。如果在 user 之前省略 /,Hadoop 将从当前目录开始搜索。

关于java - 使用命令行在 Windows 中的 hadoop 上运行 wordcount.jar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19111530/

相关文章:

java - Jasperreports 引擎 JRRuntimeException on report().show

hadoop - 尝试使用 Apache Pig 聚合数据时出错

sql - 只需从配置单元表中获取列名

hadoop - 将 PIG 中 UNION 的结果存储在单个文件中

hadoop - 将外部jar复制到/home/hadoop/lib文件夹EMR Amazon时出错

java - 如何在eclipse中创建JPA应用程序

java - nio上下文中的请求-响应同步/匹配

java - Apache POI-无法读取单元格的内容

java - 在 Web 应用程序中为每个用户创建日志文件好吗

hadoop - part-r-00000没有这样的文件或目录