jobTracker进程在启动后很快就自动关闭(前面两篇博客的方法都无法解决)

jobTracker进程在启动后很快就自动关闭(前面两篇博客的方法都无法解决):

查看logs日志发现:

2013-05-28 09:19:09,420 INFO org.apache.hadoop.http.HttpServer: Jetty bound to port 50030
2013-05-28 09:19:09,420 INFO org.mortbay.log: jetty-6.1.26
2013-05-28 09:19:09,463 INFO org.mortbay.log: Extract jar:file:/usr/lib/jvm/java-6-openjdk-i386/jre/lib/ext/hadoop-core-1.0.4.jar!/webapps/job to /tmp/Jetty_0_0_0_0_50030_job____yn7qmk/webapp
2013-05-28 09:19:09,851 WARN org.mortbay.log: failed jsp: java.lang.NoClassDefFoundError: javax/servlet/jsp/JspFactory
2013-05-28 09:19:09,858 WARN org.mortbay.log: failed org.mortbay.jetty.webapp.WebAppContext@1a4ded3{/,jar:file:/usr/lib/jvm/java-6-openjdk-i386/jre/lib/ext/hadoop-core-1.0.4.jar!/webapps/job}: java.lang.NoClassDefFoundError: javax/servlet/jsp/JspFactory
2013-05-28 09:19:09,858 WARN org.mortbay.log: failed ContextHandlerCollection@121177e: java.lang.NoClassDefFoundError: javax/servlet/jsp/JspFactory
2013-05-28 09:19:09,859 ERROR org.mortbay.log: Error starting handlers
java.lang.NoClassDefFoundError: javax/servlet/jsp/JspFactory


目前还没解决,如有那位大侠解决了,求不吝赐教。如果我解决了,一定会立即更新博客的。



更新:终于找到原因和解决方案了。


因为之前我运行C程序访问hadoop的时候,告诉我缺少一个什么包,看到网上说只用将${HADOOP_HOME}/*.jar和${HADOOP_HOME}/lib/*jar复制到${JAVA_HOME}/jre/lib/ext下,就行了。


可是这就导致jobTracker无法启动,出现如下错误:

2013-05-28 09:19:09,851 WARN org.mortbay.log: failed jsp: java.lang.NoClassDefFoundError: javax/servlet/jsp/JspFactory
2013-05-28 09:19:09,858 WARN org.mortbay.log: failed org.mortbay.jetty.webapp.WebAppContext@1a4ded3{/,jar:file:/usr/lib/jvm/java-6-openjdk-i386/jre/lib/ext/hadoop-core-1.0.4.jar!/webapps/job}: java.lang.NoClassDefFoundError: javax/servlet/jsp/JspFactory
2013-05-28 09:19:09,858 WARN org.mortbay.log: failed ContextHandlerCollection@121177e: java.lang.NoClassDefFoundError: javax/servlet/jsp/JspFactory
2013-05-28 09:19:09,859 ERROR org.mortbay.log: Error starting handlers
java.lang.NoClassDefFoundError: javax/servlet/jsp/JspFactory


解决方案,很简单:


1.首先跳转到${JAVA_HOME}/jre/lib/ext

2.ls -al列出文件创建时期,来删除最近创建的所有文件。

3.之后再bin/start_all.sh就会发现 all is ok!


通过着三篇博客,经历了如下历程:
一个个的自动关闭

hadoop@springwater-Aspire-4743:/usr/local/hadoop$ jps
8467 DataNode
8229 NameNode
8720 SecondaryNameNode
9092 Jps
8811 JobTracker
9052 TaskTracker
hadoop@springwater-Aspire-4743:/usr/local/hadoop$ jps
9135 Jps
8720 SecondaryNameNode
8811 JobTracker
9052 TaskTracker
hadoop@springwater-Aspire-4743:/usr/local/hadoop$ jps
8720 SecondaryNameNode
9170 Jps
9052 TaskTracker

启动不久后jobtracker自动关闭

======>>

hadoop@springwater-Aspire-4743:/usr/local/hadoop$ jps
6661 JobTracker
6944 Jps
6317 DataNode
6576 SecondaryNameNode
6079 NameNode
6902 TaskTracker
hadoop@springwater-Aspire-4743:/usr/local/hadoop$ jps
7010 Jps
6317 DataNode
6576 SecondaryNameNode
6079 NameNode
6902 TaskTracker


hadoop@springwater-Aspire-4743:/usr/local/hadoop$ jps
7010 Jps
6317 DataNode
6576 SecondaryNameNode
6079 NameNode
6902 TaskTracker


正常

========>

hadoop@springwater-Aspire-4743:/usr/local/hadoop$ jps
8467 DataNode
8229 NameNode
8720 SecondaryNameNode
9092 Jps
8811 JobTracker
9052 TaskTracker
hadoop@springwater-Aspire-4743:/usr/local/hadoop$ jps
9135 Jps
8467 DataNode
8229 NameNode
8720 SecondaryNameNode
8811 JobTracker
9052 TaskTracker
hadoop@springwater-Aspire-4743:/usr/local/hadoop$ jps
8467 DataNode
8229 NameNode
8720 SecondaryNameNode
9170 Jps
8811 JobTracker
9052 TaskTracker


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值