我按照教程学习使用 Java 的 Hadoop。我在 中编写Wordcount程序IntelliJ并且作业成功,我可以看到正确的输出文件。现在,我想在 Hadoop 集群中运行该应用程序,但失败了。Hadoop 设置本身很好并且可以正常启动。这是我在目录中的内容,
$ hadoop fs -ls
2018-08-18 09:15:44,012 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Found 2 items
drwxr-xr-x - chaklader supergroup 0 2018-08-17 12:17 Wordcount
-rw-r--r-- 1 chaklader supergroup 530989 2018-08-15 13:13 forum_users.tsv
pom.xml下面提供了应用程序中的文件,
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.test</groupId>
<artifactId>wordcount</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>wordcount</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<!-- Hadoop -->
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-core</artifactId>
<version>RELEASE</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>RELEASE</version>
<scope>test</scope>
</dependency>
</dependencies>
这是项目设置,
当我运行该程序时,它会创建一个JAR文件wordcount.jar,并将其放入Downloads目录中。最后,我执行命令在Hadoop集群中运行作业,
$ hadoop jar Downloads/wordcount.jar /Users/chaklader/IdeaProjects/Wordcount/src/main/java/com/test/hadoop/WordCount /user/chaklader/Wordcount/Input/input.txt /user/chaklader/Wordcount/Output
Usage: WordCount needs two arguments <input> <output> files
该错误表明WordCount needs two arguments <input> <output> files. 我检查了所有路径,似乎是正确的。
这里有什么问题?
拉风的咖菲猫
慕慕森
相关分类