You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

IntelliJ IDEA中Maven项目改Java15后Jakarta依赖缺失求助

解决Maven项目Java 15下Jakarta包无法识别的问题

1. 明确Jakarta Servlet API版本对应关系

不同版本的Jakarta Servlet API对Java版本、Servlet容器(如Tomcat)有明确要求,结合你的Java 15版本,推荐选择适配Java 11+的Jakarta Servlet 6.x系列:

  • Jakarta Servlet 6.0.x:支持Java 11+,适配Tomcat 10.1+容器,完全兼容Java 15

2. 在pom.xml中添加正确依赖

之前项目未显式添加该依赖,大概率是依赖Servlet容器提供的API,现在需要在pom.xml中补充(注意设置scope为provided,避免打包时重复引入):

<dependency>
    <groupId>jakarta.servlet</groupId>
    <artifactId>jakarta.servlet-api</artifactId>
    <version>6.0.0</version>
    <scope>provided</scope>
</dependency>

3. 同步Maven依赖并刷新项目

在IntelliJ IDEA中操作:

  • 点击右侧Maven面板的「刷新」按钮(圆形箭头图标)
  • 或执行终端命令:mvn clean install -U,强制更新依赖缓存

4. 确认项目配置一致性

  • 检查项目全局Java版本:File → Project Structure → Project → Project SDK和Project language level均设为15
  • 检查模块Java版本:File → Project Structure → Modules → 对应模块 → Sources → Language level同步设为15

5. 排查容器兼容性

如果项目部署到Tomcat等容器,需保证容器版本与Jakarta Servlet版本匹配:

  • 使用Jakarta Servlet 6.0.x需搭配Tomcat 10.1.x及以上版本
  • 若容器版本较低(如Tomcat 9),仅支持旧版javax.servletAPI,此时需要么升级容器,要么降级Java语言级别并换回javax.servlet依赖

内容的提问来源于stack exchange,提问作者jay sahay

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 00:29:53