不是测试hadoop mapreduce wordcount的有效jar

bgtovc5b  于 2021-05-30  发布在  Hadoop
关注(0)|答案(1)|浏览(423)

刚接触hadoopmapreduce,我不知道为什么会出现这个错误。
我现在得到: Not a valid JAR: /nfsdata/DSCluster/home/user/bli1/wordcount/wc.jar 这是我的过程:
hdfs文件结构:

  1. /bli1
  2. /wordcount
  3. wc.jar
  4. WordCount.java
  5. /input
  6. file01
  7. /output
  8. file02

在本地计算机上创建 WordCount.java 以及 wc.jarjar cf wc.jar WordCount.java 在本地计算机上创建 file01 以及 file02 创建 /input 以及 /output 目录在 /wordcount 在hdfs中
使用hdfs将文件移动到其目录 hdfs dfs -moveFromLocal <localsrc> <dst> 运行命令:
hadoop jar/user/bli1/wordcount/wc.jar wordcount/user/bli1/wordcount/input/user/bli1/wordcount/output
输出:

  1. Not a valid JAR: /user/bli1/wordcount/wc.jar

我试着做这个jar,但是我会出错。

  1. $ hadoop com.sun.tools.javac.Main WordCount.java
  2. Error: Could not find or load main class com.sun.tools.javac.Main

如果制作jar的过程与 jar cf wc.jar WordCount.java 那么这可能就是问题的根源。但是我不知道为什么我会得到 find or load main class error

pgvzfuti

pgvzfuti1#

Liondacer,在java jar文件中,必须添加编译的*.class文件,而不是源*.java文件。
另外,一旦解决了这个问题,我认为hadoop很可能会抱怨输出目录的存在。我的意思是,hadoop希望自己创建一个这样的输出目录,它一定不存在。

相关问题