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

STS 4.18.1部署组件找不到Java Build Path条目问题求助

解决STS 4.18.1中HttpSessionEventPublisher类找不到的问题

这个异常核心是部署时spring-security-web包未被放入WEB-INF/lib目录,STS 4的界面逻辑和STS 3不同,旧操作路径失效是正常的,按以下步骤排查:

1. 先确认Maven依赖配置是否正确

打开项目pom.xml,检查spring-security-web的依赖配置:

<dependency>
    <groupId>org.springframework.security</groupId>
    <artifactId>spring-security-web</artifactId>
    <version>你的Spring Security版本号</version>
    <!-- 重点:scope必须为compile(默认就是compile,别改成provided/test) -->
    <scope>compile</scope>
</dependency>

如果scope设为provided,Maven不会把这个包打包到WEB-INF/lib,而Tomcat本身不带这个类,必然报错。

2. 正确配置STS 4的Deployment Assembly

STS 4里Deployment Assembly的入口变了,按这个路径操作:

  • 右键项目 → Properties(或直接按Alt+Enter)
  • 在弹出窗口的搜索框输入「Deployment Assembly」,直接定位到配置页
  • 点击「Add」按钮 → 选择「Java Build Path Entries」→ 选中「Maven Dependencies」→ 确认添加

如果找不到「Java Build Path Entries」选项,先右键项目 → Maven → Update Project,勾选「Force Update of Snapshots/Releases」,更新完成后再重试配置。

3. 清理+重新打包部署

  • 右键项目 → Run As → Maven Clean,清空target目录
  • 再执行Maven Install,重新生成部署文件
  • 双击STS中的Tomcat服务器,进入配置页切换到「Deployment」标签,移除旧部署条目后重新添加项目
  • 手动删除Tomcat安装目录下的work、temp文件夹,以及webapps下的项目目录,再重启服务器

4. 验证依赖是否存在

打包完成后,去项目的target/项目名/WEB-INF/lib目录下,确认是否有spring-security-web-xxx.jar文件。如果没有,回到pom.xml检查依赖是否正确引入,或执行mvn dependency:tree查看依赖树,确认该包是否被排除。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 22:52:13