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

Spring REST服务JWT认证报错:SecureRequest类未找到

解决方案:ClassNotFoundException: io.jsonwebtoken.security.SecureRequest

核心原因

这个错误是因为JJWT库的依赖不完整或版本不兼容导致的。从0.11.0版本开始,JJWT将核心功能拆分为多个独立模块,若只引入了基础模块,缺少包含SecureRequest类的安全模块,就会触发该异常。

具体修复步骤

1. 统一JJWT依赖版本

确保所有JJWT相关依赖使用相同的稳定版本(推荐0.11.5),避免跨版本冲突。

2. 补充完整的JJWT依赖

如果使用Maven,在pom.xml中添加以下依赖:

<dependency>
    <groupId>io.jsonwebtoken</groupId>
    <artifactId>jjwt-api</artifactId>
    <version>0.11.5</version>
</dependency>
<dependency>
    <groupId>io.jsonwebtoken</groupId>
    <artifactId>jjwt-impl</artifactId>
    <version>0.11.5</version>
    <scope>runtime</scope>
</dependency>
<dependency>
    <groupId>io.jsonwebtoken</groupId>
    <artifactId>jjwt-jackson</artifactId>
    <version>0.11.5</version>
    <scope>runtime</scope>
</dependency>

如果使用Gradle,在build.gradle中添加:

implementation 'io.jsonwebtoken:jjwt-api:0.11.5'
runtimeOnly 'io.jsonwebtoken:jjwt-impl:0.11.5'
runtimeOnly 'io.jsonwebtoken:jjwt-jackson:0.11.5'

3. 清理并重新构建项目

  • Maven执行:mvn clean install
  • Gradle执行:gradle clean build
  • 重启Spring Boot应用后重新测试登录接口

额外排查点

  • 用mvn dependency:tree或Gradle依赖报告检查是否存在多版本JJWT依赖,如有则排除冲突版本。
  • 若参考的教程基于JJWT旧版(如0.9.x),需调整代码适配0.11.x版本的API(新旧版API差异较大)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 11:12:42