springboot服务启动正常接口访问404

问题背景:最近架构一个新项目,在本地开发测试正常,但是测试环境docker一部署,定时任务也能正常运行,但就是controller接口访问404,各种常规问题都找了死活儿不行。

 

以下是按着正常的思路去排查的:(以下各种 嫌疑都可能找到问题解决方案,供您参考)

嫌疑1:application启动类相对路径是不是不对,经排查没问题

嫌疑2:测试服务器日志是否有错误日志,经排查正常

嫌疑3:升级tomcat版本,是否由于tomcat内置的servlet-api版本过低或者过高导致?更换后也不行

嫌疑4:pom文件是否存在版本冲突导致,经排查无冲突

嫌疑4:dispatcherServlet没有起作用,定时任务是正常运行的,说明服务是启动正常的,但是为什么接口访问404呢,有一种可能是dispatcherServlet这家伙没有正常工作,没有正常工作还有两种可能,一种是版本冲突了,另一种是懒加载了。如果是版本冲突 会在日志中有体现,报class not found或者找不到响应方法,但是都没有发现,那就有可能没有实时加载。

在application.properties文件中 追加

spring.mvc.servlet.load-on-startup=1 这个配置项,然后启动项目,启动成功

最后要说的是,为什么会存在这个问题呢?求赐教

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

努力终会有回报

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值