项目发布只有meta-inf 和web-info,No Spring WebApplicationInitializer types detected on classpath 解决办法

最近有很多开发者盆友让我解决一个问题,因为遇到的次数太多了,感觉像很多人的通病了,所以写下以便为大家解决开发不必要的时间。

出现这个问题:No Spring WebApplicationInitializer types detected on classpath ,其实一般就是你的spring配置文件未加载,进而可以考虑一下web.xml是否被加载出来,这个时候首先要从源头进行排查,看是否将web.xml部署上去。打开tomcat,找到webapps下面的部署项目,打开目录结构。发现有的人只有meta-inf 和web-info,那就说明项目部署资源加载不合适。这个时候你需要:

项目名右键点击properties如图设置,你需要将你的资源文件也就是web端资源文件的部署目录设置为/.

项目发布只有meta-inf 和web-info,No Spring WebApplicationInitializer types detected on classpath 解决办法

PS:这里需要注意一下,有的人的web资源项目目录为“/WebRoot”,按如下修改。

项目发布只有meta-inf 和web-info,No Spring WebApplicationInitializer types detected on classpath 解决办法

PS:前面的source选择一定根据你的资源所在的那个webapp.

修改完成之后,移除发布项目,重新发布即可。

不代表所有的人遇到的问题都可以这样解决,只是希望是这种问题的猿们可以不过多在这个问题上浪费时间。毕竟time is money.