不建议看这篇文章,因为我觉得这问题出得有点奇葩,没人会遇到吧。。。
先回顾一下如何查看tomcat版本号。首先打开cmd,进入D盘,然后改变盘到Tomcat安装目录bin文件夹下(一个星光熠熠的马赛克)
然后输入version,可以看到当前版本号为7.0.78
启动Tomcat:bin/startup.bat
查看是否启动成功: http://localhost:8080
哦豁,不幸失败,而且还没有错误提示。反复检查了环境变量,没有问题。
1.先看一下8080被占用没有,cmd输入netstat -ano|findstr "8080",发现没有8080,说明没有占用
2.不能让他一闪而过,得找找错误出在哪里。首先打开startup.bat文件,将最下面
call “%EXECUTABLE%” start %CMD_LINE_ARGS%
修改为
call “%EXECUTABLE%” run %CMD_LINE_ARGS%(最后成功了记得要改回去)
重新启动Tomcat(cmd中:bin/startup.bat),即可查看到出错信息。
感觉不是太明白
3.有没有更详细的报错信息呢?有,查看Tomcat日志。在安装目录下log中,打开tomcat7-stdout.2020-XX-XX.log(找到当天的日期)。以下是错误摘抄:
找到错误信息1: Error creating bean with name 'helloAction': Unsatisfied dependency expressed through field 'dishserv'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean found for dependency [edu.cugb.xg.javaee.service.DishService]: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
大意是创建名为“helloAction”的bean时出错:字段“dishserv”未满足依赖项;嵌套的异常为org.springframework.beans.factory.NoSuchBeanDefinitionException:依赖项[edu.cugb.xg.javaee.service.DishService]找不到合适的bean:应至少有1个符合的bean。
哦 是以前挖的坑吗,这是我很久之前的项目 不记得了呀(无辜)。不想改了,反正已经不用了,索性删了webapp下项目源代码
然后在tomcat目录下找到conf (或者config) 目录找到server.xml文件。下图对应的这几个context对应的项目我刚刚删了源代码,所以该标签也删除,不然会报错“找不到”
好,这下没有报该项目相关的错误了。但是还有Catalina启动失败的错误(看到这里,思想的骏马突然跑了,想起一个调调...lalala catalina~)
4.这时!我看到log目录下还有catalina的专属日志文件,赶紧打开看看
错误摘抄:Error deploying web application directory D:\Tomcat\tomcat7\webapps\HTTPRPC
啊 意思是说我的项目“HTTPRPC”还没删除干净,赶紧各个目录看一看,删掉
5.成功!小猫你终于出现啦啊啊啊!
参考:https://www.cnblogs.com/zhe-hello/p/9647799.html(此方法试了,我没成功启动)