【发布时间】:2013-08-15 12:10:39
【问题描述】:
我有一个有效的 jar,它在另一个运行相同版本的 hadoop 的系统上完美运行,即具有相同设置的 hadoop-1.2.1。
我可以将 jar 文件放入 hdfs 文件系统并创建输入、输出目录。
但是当我使用命令'hadoop jar HelloWorld.jar classname(main method) input output'时,它会抛出'Invalid jar'错误。找了半天可能的解决办法,发现该命令是在本地文件系统中搜索jar,而不是在hdfs中搜索。
即使我尝试将方案添加到命令中: hadoop jar hdfs://HelloWorld.jar classname(main method) 输入输出
对此有什么可能的解决方案?
P.S:当我的 PWD 是本地文件系统中的 /home/user/hadoop-1.2.1 时,我可以使用“hadoop jar”运行 hadoop-examples-1.2.1.jar
【问题讨论】:
-
HelloWorld.jar 保留在本地系统而不是 HDFS - 为什么将它存储在 HDFS 中?
-
@JtheRocker 你能指出一些文件说
hadoop jar从本地系统中挑选罐子吗?我总是在 hdfs 上加载我的 jar 并运行,它工作正常。但是我的本地路径上的 jar 也有相同的路径。所以它可能会选择本地路径,而不是 hdfs 上的路径(如我所料) -
@SuvP:如果有帮助,请检查我的回答。
-
我什么都试过了......请帮忙,我现在卡了很长时间