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

升级Spring Boot 3时遭遇WireMock兼容性问题求助

解决Spring Boot 3.0升级后WireMock的javax.servlet/DispatcherType缺失问题

问题根源

Spring Boot 3.0完成了从Java EE到Jakarta EE的全面迁移,所有Servlet相关API从javax.servlet包切换到了jakarta.servlet包。你使用的wiremock-jre8 2.35.0属于WireMock 2.x系列,该版本完全基于旧的javax.servlet API开发,无法兼容Spring Boot 3.0的Jakarta环境,因此抛出NoClassDefFoundError。

解决方案

升级到WireMock 3.x及以上版本,并使用专门适配Jakarta EE的依赖artifactId:

Maven依赖配置

<dependency>
    <groupId>com.github.tomakehurst</groupId>
    <artifactId>wiremock-jre8-jakarta</artifactId>
    <version>3.0.0</version> <!-- 可替换为最新稳定版 -->
    <scope>test</scope>
</dependency>

Gradle依赖配置

testImplementation 'com.github.tomakehurst:wiremock-jre8-jakarta:3.0.0' // 可替换为最新稳定版

注意事项

  • 直接替换原有的wiremock-jre8依赖为wiremock-jre8-jakarta,无需额外引入Jakarta Servlet依赖(Spring Boot 3.0会自动管理)
  • 若项目中存在其他基于javax.servlet的第三方依赖,需同步检查是否有适配Jakarta的版本,避免依赖冲突

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 18:50:45