如何在基于Maven的项目中借助Tomcat运行Servlet
在Eclipse Maven项目中用Tomcat运行Servlet的步骤
1. 把Maven项目转为Web项目
右键你的Maven项目 → Properties → Project Facets,勾选Dynamic Web Module,选择和你Tomcat匹配的版本(比如Tomcat9对应Web 4.0)。
- 若提示需要配置Deployment Descriptor,点击链接指定路径为
src/main/webapp/WEB-INF/web.xml,如果该文件不存在,直接创建即可。
2. 添加Servlet API依赖到pom.xml
在项目的pom.xml中加入Servlet API依赖,注意scope设为provided(Tomcat自带该jar,打包时无需包含):
<dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>4.0.1</version> <!-- 对应Tomcat9,版本按需调整 --> <scope>provided</scope> </dependency>
如果用Tomcat10及以上,依赖要换成Jakarta版本:
<dependency> <groupId>jakarta.servlet</groupId> <artifactId>jakarta.servlet-api</artifactId> <version>5.0.0</version> <scope>provided</scope> </dependency>
3. 创建Servlet类
在src/main/java下新建包和Servlet类,继承HttpServlet并重写doGet/doPost方法,用注解配置访问路径(Servlet 3.0+支持):
package com.example.servlet; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.PrintWriter; @WebServlet("/HelloServlet") // 访问路径 public class HelloServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); out.println("<html><body>"); out.println("Hello from Maven Servlet!"); out.println("</body></html>"); } }
如果不用注解,也可以在web.xml中配置Servlet映射,示例:
<servlet> <servlet-name>HelloServlet</servlet-name> <servlet-class>com.example.servlet.HelloServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>HelloServlet</servlet-name> <url-pattern>/HelloServlet</url-pattern> </servlet-mapping>
4. 配置Tomcat服务器到Eclipse
- 打开 Window → Preferences → Server → Runtime Environments,点击Add,选择你的Tomcat版本,指定Tomcat安装目录,完成配置。
- 在Eclipse的Servers视图中,右键 → New → Server,选择刚才配置的Tomcat,点击Next,把你的Maven项目移到右侧的Configured projects,点击Finish。
5. 运行项目
- 右键Servers视图中的Tomcat → Start;
- 或者右键你的Maven项目 → Run As → Run on Server,选择配置好的Tomcat,点击Finish。
- 浏览器访问:
http://localhost:8080/你的项目上下文路径/HelloServlet(上下文路径可在项目Properties → Web Project Settings中查看)。
注意事项
- 确保Tomcat版本和Dynamic Web Module版本匹配:Tomcat8对应Web 3.1,Tomcat9对应4.0,Tomcat10对应5.0;
- Tomcat10及以上使用
jakarta.servlet包代替javax.servlet,代码中的import需要同步替换; src/main/webapp是Web资源根目录,静态文件、JSP等需放在这里。
内容的提问来源于stack exchange,提问作者Neel Raina
相关产品推荐
相关产品推荐

