我试图通过从eclipse构建jar运行我的MapReduce作业,但是在尝试执行作业时,出现“不是有效的Jar”错误。
我试图按照链接“不是有效的Jar”进行操作,但这并没有帮助。
谁能给我有关如何从eclipse构建jar的说明,以使其在Hadoop上运行。
我知道从eclipse构建Jar文件的过程,但是我不确定,我是否需要特别注意构建jar文件,以便它在Hadoop上运行。
提交命令时,请确保您在执行命令的一行上具有以下内容:
当您指示广口瓶时,请确保您正确指向广口瓶。使用绝对路径可能最容易确定。要获取绝对路径,如果您导航到jar所在的位置,请运行'readlink -f'命令以获取绝对路径。因此,对您而言,不仅是hist.jar,而且可能是/home/akash_user/jars/hist.jar或系统上的任何位置。如果使用的是Eclipse,则可能会将其保存在有趣的地方,因此请确保这不是问题。该jar无法从HDFS存储运行。必须从本地存储运行。
当您为主类命名时,在示例直方图中,必须使用该类的全限定名,以及包,项目和类。因此,通常,如果程序/项目名为Histogram,并且有HistogramDriver,HistogramMapper,HistogramReducer,并且main()在HistogramDriver中,则需要键入Histogram.HistogramDriver才能使程序运行。(除非您将jar设置为可运行的,否则它在一开始就需要额外的东西,使.mdf成为可能。)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句