今天启动Tomcat启动不了,报以下错: 

org.apache.catalina.core.StandardContext startInternal 
SEVERE: Error listenerStart 
org.apache.catalina.core.StandardContext startInternal 
SEVERE: Context [/******] startup failed due to previous errors 

网上找了N多文章,都没有切中要害。 
后来在国外网站上搜到一个方法 
http://grails.1312388.n4.nabble.com/Deployment-problems-td4628710.html。 
我试了一下,是可以的。方案如下。 

Tomcat报的错太含糊了,什么错都没报出来,只提示了Error listenerStart。为了调试,我们要获得更详细的日志。可以在WEB-INF/classes目录下新建一个文件叫logging.properties,内容如下 

Java代码  

  1. handlers = org.apache.juli.FileHandler, java.util.logging.ConsoleHandler  

  2.   

  3. ############################################################  

  4. # Handler specific properties.  

  5. # Describes specific configuration info for Handlers.  

  6. ############################################################  

  7.   

  8. org.apache.juli.FileHandler.level = FINE  

  9. org.apache.juli.FileHandler.directory = ${catalina.base}/logs  

  10. org.apache.juli.FileHandler.prefix = error-debug.  

  11.   

  12. java.util.logging.ConsoleHandler.level = FINE  

  13. java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter  



这样,我们再启动tomcat时,就会在logs目录下生成一个更详细的日志error-debug.2012-05-31.log。 

我们进去看看什么错吧。 
我碰到的错误是FileNotFoundException.大家碰到的错应该各式各样都有,所以就要具体问题具体分析了。 
tomcat的logging文档具体可参考http://tomcat.apache.org/tomcat-7.0-doc/logging.html