Eclipse中Maven创建的Spring MVC项目未自动生成web.xml如何解决?
Spring MVC项目缺失web.xml的解决办法
Eclipse自动生成web.xml及目录
- 右键你的Spring MVC项目,依次选择「Java EE Tools」→「Generate Deployment Descriptor Stub」,Eclipse会自动创建
src/main/webapp/WEB-INF目录和标准的web.xml文件。 - 如果找不到「Java EE Tools」选项,说明你的Eclipse可能不是企业版:打开Eclipse Marketplace,搜索「Java EE Developer Tools」安装,重启后就能看到该选项。
手动创建web.xml及目录
如果自动生成有问题,手动创建更直接:
- 在项目的
src/main目录下新建webapp文件夹,再在webapp里新建WEB-INF文件夹。 - 在
WEB-INF里新建web.xml文件,粘贴适配Spring MVC的基础模板:
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0"> <!-- Spring MVC核心DispatcherServlet配置 --> <servlet> <servlet-name>dispatcherServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/spring-mvc-config.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>dispatcherServlet</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> </web-app>
- 右键项目→「Properties」→「Project Facets」,确认勾选「Dynamic Web Module」,并设置对应Servlet版本(比如4.0),点击「Apply」完成配置。
额外说明
从Servlet 3.0规范开始,web.xml不是必须的,你可以用Spring的Java配置类或Servlet注解替代,但如果教程明确要求使用web.xml,按上面的方法创建即可。
内容的提问来源于stack exchange,提问作者Nguyen Cuc
相关产品推荐
相关产品推荐

