要解决找不到 javax.servlet.* 的问题,你需要添加 Servlet API 的 JAR 包,常见的 JAR 名称为:

  • servlet-api.jar
  • javax.servlet-api-3.1.0.jar 或更高版本

✅ 1. 解决方式一:下载 JAR 包并手动导入

推荐下载版本(带源码/无源码均可):

版本下载地址(开源站)
javax.servlet-api-3.1.0.jarMaven Repository
servlet-api-2.5.jar(适配Tomcat6)Maven Repository
javax.servlet-api-4.0.1.jar(适配Tomcat9)Maven Repository

✅ 将下载的 .jar 添加到 IDE 项目的 lib 目录,并右键设置为 Add as Library(Eclipse/IDEA)。


✅ 2. 使用 Maven 自动引入(推荐)

在你的 pom.xml 中添加以下依赖:

<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>4.0.1</version>
    <scope>provided</scope>
</dependency>

说明:

  • scope 设置为 provided 表示运行时由 Servlet 容器(如 Tomcat)提供,不打进最终 war 包。

✅ 3. 对应 Servlet 版本说明(建议与服务器匹配)

Servlet 版本Java 要求Tomcat 最低版本
2.5Java 5Tomcat 6
3.0Java 6Tomcat 7
3.1Java 7Tomcat 8
4.0Java 8Tomcat 9
5.0Java 11Tomcat 10(使用 jakarta.servlet)

🚨 注意(Tomcat 10+ 是 jakarta 包命名)

从 Tomcat 10 开始,javax.servlet 更名为 jakarta.servlet,使用需改代码或保持使用旧版本 Tomcat 9 以下。


✅ 示例:使用 servlet-api-3.1.0.jar 编译 Servlet

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.IOException;

public class HelloServlet extends HttpServlet {
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
        response.getWriter().println("Hello Servlet!");
    }
}

如果你使用的是 Eclipse + Tomcat,可以告诉我具体版本,我可以帮你导入并配置 .jar 或 .runtime container。如果你还需要 JAR 包离线下载(含打包链接),我也可以直接提供。是否需要我发网盘链接?