我的电脑同时使用两个jdk版本,默认1.7,eclipse使用的是1.8,,由于项目启动时有加载类需要jdk1.8的包,1.7不支持。所以导致项目在eclipse直接能够跑,而在外面的tomcat跑是就出现startup failed due to previous errors的错误.

    但是这样的提示信息问题还是表达比较含糊,下面我们开始重新理思绪,通过查看日志来分析原因。

 为了调试,我们要获得更详细的日志。可以在WEB-INF/classes目录下新建一个文件叫logging.properties

 

[java] view plain copy

 
  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的日志目录下会生成error-debug.***.log的文件。里面会提供较详细提示信息。我的反馈如下:

…Unsupported major.minor version 52.0 (unable to load class com.sdmc.controller.IndexController)…

版本不支持上面类的运行,但是编译时使用的是JDK1.8的包.所以eclipse上不会报错。

这种问题奇葩吧,好了废话不多说,感慨不大堆。总结是出现类似问题从日志开始。

如果早养成这样的习惯也不会让我耗了这么久,分分钟搞定

版权声明:本文为shijiaoyun原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/shijiaoyun/p/8707848.html