在linux系统下使用eclipse自动打包运行MapReduce的时候发现了如下错误。
Exit code: 1
Stack trace: ExitCodeException exitCode=1:
at org.apache.hadoop.util.Shell.runCommand(Shell.java:538)
at org.apache.hadoop.util.Shell.run(Shell.java:455)
at org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:715)
at org.apache.hadoop.yarn.server.nodemanager.DefaultContainerExecutor.launchContainer(DefaultContainerExecutor.java:212)
at org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch.call(ContainerLaunch.java:302)
at org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch.call(ContainerLaunch.java:82)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Container exited with a non-zero exit code 1
Failing this attempt. Failing the application.
看错误栈找不到突破口,上网找了很多方法也不适用。最后手动重新打包MapReduce程序在linux终端运行后,输出的错误栈有明确的错误原因,修改过后重新运行即可。当遇到这个问题时,自行打包在终端运行能够发现内在的错误。(怀疑eclipse或者jar包代码块有bug,使用自动打包出现过自定义计数器无法显示的错误,重新手动打包运行能正常显示。。。)
|