Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Eclipse &引用;不是有效的Jar";尝试运行Map Reduce作业时_Eclipse_Hadoop_Mapreduce - Fatal编程技术网

Eclipse &引用;不是有效的Jar";尝试运行Map Reduce作业时

Eclipse &引用;不是有效的Jar";尝试运行Map Reduce作业时,eclipse,hadoop,mapreduce,Eclipse,Hadoop,Mapreduce,我试图通过从eclipse构建一个jar来运行my MapReduce作业,但在尝试执行作业时,我遇到了“Not a valid jar”错误 我试着去关注这个链接,但是没有用 有谁能告诉我如何从eclipse构建jar,以便它在Hadoop上运行 我知道从eclipse构建Jar文件的过程,但是我不确定是否需要特别注意构建Jar文件,以便它在Hadoop上运行 确保您提交的jar(hist.jar)位于当前目录中,您可以从该目录提交“hadoop jar”命令 如果问题仍然存在,请告诉您正在使

我试图通过从eclipse构建一个jar来运行my MapReduce作业,但在尝试执行作业时,我遇到了“Not a valid jar”错误

我试着去关注这个链接,但是没有用

有谁能告诉我如何从eclipse构建jar,以便它在Hadoop上运行


我知道从eclipse构建Jar文件的过程,但是我不确定是否需要特别注意构建Jar文件,以便它在Hadoop上运行

确保您提交的jar(hist.jar)位于当前目录中,您可以从该目录提交“hadoop jar”命令


如果问题仍然存在,请告诉您正在使用的Java、Hadoop和Linux版本。

提交命令时,请确保行中有以下内容来执行命令:

  • 指示罐子时,确保正确指向罐子。使用绝对路径可能最容易确定。要获取绝对路径,如果您导航到jar所在的位置,则运行'readlink-f'命令获取绝对路径。因此,对于您来说,不仅仅是hist.jar,还可能是/home/akash_user/jars/hist.jar或系统中的任何位置。如果您使用的是Eclipse,那么它可能会将它保存在一个有趣的地方,因此请确保这不是问题所在。无法从HDFS存储运行jar。必须从本地存储运行

  • 在示例直方图中,命名主类时,必须在包、项目和类中使用类的完全限定名。因此,通常,如果程序/项目名为Histogram,并且存在HistogramDriver、HistogramApper、HistogramReducer,并且您的main()位于HistogramDriver中,则需要键入Histogram.HistogramDriver以运行程序。(除非你让你的jar可以运行,这在一开始需要额外的东西,make.mdf和其他东西。)


  • 在执行MapReduce作业时,不应将jar文件保存在HDFS中。确保Jar在本地路径中可用。输入路径和输出目录应该是来自HDFS的路径。

    您是如何执行jar的?通过Oozie或Hue,或通过命令行?如果是命令行,您使用什么命令字符串来尝试执行jar?我尝试通过命令行执行jar,我使用的命令是--hadoop jar hist.jar直方图“hdfs input path”“hdfs output path”您确定jar文件位于运行应用程序的目录中吗?您还记得hist.jar是文件的相对路径。因此,在hadoop中执行jar文件之前,我们必须在hdfs中加载所有jar吗?您好,我遵循了上面的说明,但仍然面临相同的问题。我现在尝试wordcount示例,但也面临相同的问题。我使用的命令是::hadoop jar/home/hduser/Desktop/WordCount.jar WordCount.WordCount.java/user/hduser/hdfsinput/user/hduser/hdfsoutput1。。。。。我没有让我的jar运行,它只是一个正常的导入。。。。还是同样的问题“不是一个有效的JAR:/home/hduser/Desktop/WordCount.JAR”,我使用的是Java版本1.7、Hadoop 1.2.1和Ubuntu 12.04