Container exited with a non-zero exit code 1. Error file: prelaunch.err.
Last 4096 bytes of prelaunch.err :
Last 4096 bytes of stderr :
log4j:WARN No appenders could be found for logger (org.apache.hadoop.mapreduce.v2.app.MRAppMaster).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See
今天在运行某程序时出现了如上图所示的问题,查找资料后发现是由于由于log4j这个日志信息打印模块的配置信息没有给出造成的,简单的说就是人家要有个地方来存放日志的打印信息,可是你又不给人家,所以就报错了吧
解决办法:
在你的项目的src目录中创建一个名为log4j.properties的文本文件,记住是文本文件,不是文件夹
然后在你的文本文件中加入如下的内容:
# Configure logging for testing: optionally with log file
#log4j.rootLogger=debug,appender
log4j.rootLogger=info,appender
#log4j.rootLogger=error,appender
#\u8F93\u51FA\u5230\u63A7\u5236\u53F0
log4j.appender.appender=org.apache.log4j.ConsoleAppender
#\u6837\u5F0F\u4E3ATTCCLayout
log4j.appender.appender.layout=org.apache.log4j.TTCCLayout
将该方法插入到main函数中,可以自行打印日志信息了
MultipleInputs.addInputPath(job, new Path(args[0]), TextInputFormat.class, WordMapper1.class);
MultipleInputs.addInputPath(job, new Path(args[1]), TextInputFormat.class, WordMapper2.class);