今天使用tomcat7.0.54启动现有的maven项目,可以正常启动,但是自己所写的所有的@controller注解的请求都报出了404的错误,在网上查了好久也很少找到这个问题,各种方法都尝试了也没有找到合适的解决方案。无奈只能自己一步一步来进行问题的排查。
1.开始以为是源码问题,是不是因为落下了某个关键的配置,所以导致现在的404错误?但是相同的源码,在同事那里没有问题,所以说,源码没有问题。
2.那是什么问题呢?拿到同事生成的可以正常运行的war包,同时将自己生成的war包和同事的war包部署在本地,发现还是自己的是404,对比生成的相应的文件内容,发现同时的war包中的WEB-INF/lib文件夹下多了maven依赖的相关的jar包文件等,而自己生成的项目却没有些jar包。问题定位成功,下面是解决方案。
右键项目-属性-deployment assembly,发现没有maven dependencies相关项,添加即可,然后运行成功啦。
最终结果