hadoop报错:Stack trace: ExitCodeException exitCode=1

在Linux系统中使用Eclipse自动打包MapReduce程序时遇到错误,表现为ExitCode:1。错误栈信息不明确,尝试多种解决办法无效。最终通过手动打包并在终端运行程序,发现并修复了导致问题的明确错误。这提示可能存在Eclipse自动打包的bug或特定代码块问题,手动打包能暴露潜在问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在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,使用自动打包出现过自定义计数器无法显示的错误,重新手动打包运行能正常显示。。。)

INFO Client:54 - client token: N/A diagnostics: Application application_1686359558924_0001 failed 2 times due to AM Container for appattempt_1686359558924_0001_000002 exited with exitCode: 13 For more detailed output, check application tracking page:http://spark01:8088/cluster/app/application_1686359558924_0001Then, click on links to logs of each attempt. Diagnostics: Exception from container-launch. Container id: container_e01_1686359558924_0001_02_000001 Exit code: 13 Stack trace: ExitCodeException exitCode=13: at org.apache.hadoop.util.Shell.runCommand(Shell.java:585) at org.apache.hadoop.util.Shell.run(Shell.java:482) at org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:776) 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 13 Failing this attempt. Failing the application. ApplicationMaster host: N/A ApplicationMaster RPC port: -1 queue: default start time: 1686359786278 final status: FAILED tracking URL: http://spark01:8088/cluster/app/application_1686359558924_0001 user: root Exception in thread "main" org.apache.spark.SparkException: Application application_1686359558924_0001 finished with failed status at org.apache.spark.deploy.yarn.Client.run(Client.scala:1165) at org.apache.spark.deploy.yarn.YarnClusterApplication.start(Client.scala:1520) at org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:894) at org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:198) at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:228) at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:137) at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala) 2023-06-10 09:20:01 INFO ShutdownHookManager:54 - Shutdown hook called 2023-06-10 09:20:01 INFO ShutdownHookManager:54 - Deleting directory /tmp/spark-7a611aba-e3f1-4ee9-9829-f1bc45c9348d 2023-06-10 09:20:01 INFO ShutdownHookManager:54 - Deleting directory /tmp/spark-b69c8ca8-924f-430e-9a7c-625efd9e9f47
06-11
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值