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

运行登录JSP遇java.lang.ClassNotFoundException: org.springframework.ui.context.ThemeSource错误

解决Spring中java.lang.ClassNotFoundException: org.springframework.ui.context.ThemeSource错误

刚接触Spring就碰到这种依赖问题确实容易慌,别担心,这个错误其实很常见,我来一步步帮你排查解决:

错误根源

org.springframework.ui.context.ThemeSource这个类属于Spring的context-support模块,出现找不到类的问题,90%以上是你的项目里没引入这个依赖包——毕竟你提到已经配置了Servlet和Bean的依赖,但这个模块是单独的,默认可能没包含进去。

具体解决方案

1. 添加Spring Context-Support依赖

根据你用的构建工具,对应添加依赖:

  • 如果是Maven,在pom.xml里插入这段配置:
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context-support</artifactId>
    <version>你的Spring版本号</version> <!-- 比如和你其他Spring依赖一致的5.3.20 -->
</dependency>
  • 如果是Gradle,在build.gradle里添加:
implementation 'org.springframework:spring-context-support:你的Spring版本号'

⚠️ 注意版本号要和你项目中其他Spring依赖完全一致,避免版本冲突导致新问题。

2. 确认依赖正确导入

添加完依赖后,刷新你的构建工具:

  • Maven的话点击IDE里的刷新按钮,或者执行mvn clean install;
  • Gradle执行gradle build --refresh-dependencies。
    然后检查项目的依赖库中是否出现spring-context-support-xxx.jar,确保它被正确下载并引入。

3. 检查Web部署配置(针对Web项目)

如果是部署到Tomcat这类容器的Web项目,还要确认部署包(war包)里包含这个jar:

  • 在IDE的Deployment Assembly配置里,检查是否把这个依赖加入到部署列表中;
  • 手动解压war包的话,看看WEB-INF/lib目录里有没有spring-context-support的jar文件。

补充:关于你的JSP代码

从你贴的login.jsp片段看,<%@include file="include.jsp"%>大概率引入了和Spring主题渲染相关的内容,这会触发Spring去加载ThemeSource类,这也是为什么之前配置Servlet和Bean时没报错,运行JSP才出现问题的原因。


内容的提问来源于stack exchange,提问作者Show-me-the-code

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 04:16:18