返回 Bug 清单
BUG-0084project-43高已修复maven-dependency

jjwt-impl 运行时依赖缺失致 JWT 运行时崩溃

发现:2026-09-30验证:2026-10-09置信度:85%

症状

调用 `JwtTokenService.parse()` 或 `createToken()` 时抛出 `java.lang.ClassNotFoundException`,最终 fat JAR 不含 jjwt-impl 实现类。

根因

`lightning-starter/pom.xml` 中 `jjwt-impl` 依赖的 `<scope>runtime</scope>` 在 Spring Boot Maven 插件 repackage 时被排除。 ```xml <dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt-impl</artifactId> <scope>runtime</scope> <!-- ← 被排除出 fat JAR --> </dependency> ```

修复方案

**提交**:`b2c9255` 移除 `jjwt-impl` 的 `<scope>runtime</scope>`,确保打包时包含实现类: ```xml <dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt-impl</artifactId> <!-- scope 移除,默认 compile 包含到 fat JAR --> </dependency> ```

修复命令

**提交**:`b2c9255`

移除 `jjwt-impl` 的 `<scope>runtime</scope>`,确保打包时包含实现类:

```xml
<dependency>
    <groupId>io.jsonwebtoken</groupId>
    <artifactId>jjwt-impl</artifactId>
    <!-- scope 移除,默认 compile 包含到 fat JAR -->
</dependency>
```

错误签名

调用 `JwtTokenService.parse()` 或 `createToken()` 时抛出 `java.lang.ClassNotFoundException`,最终 fat JAR 不含 jjwt-impl 实现类。

技术信息

来源项目

project-43

涉及文件

lightning-starter/pom.xml

标签

maven-dependency, project-43