【发布时间】:2021-11-10 20:35:23
【问题描述】:
我正在使用 Ktor 框架在 Kotlin 中构建服务器端应用程序。当我运行应用程序时,我会收到一个NoClassDefFoundError。堆栈跟踪如下所示:
Caused by: java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/JsonDeserializer
at com.auth0.jwt.JWTVerifier.<init>(JWTVerifier.java:28)
at com.auth0.jwt.JWTVerifier$BaseVerification.build(JWTVerifier.java:316)
at com.auth0.jwt.JWTVerifier$BaseVerification.build(JWTVerifier.java:304)
at com.example.auth.JwtService.<init>(JwtService.kt:18)
at com.example.ApplicationKt.module(Application.kt:44)
这似乎与我的 JWTVerifier 类中显示的验证器变量有关。
val verifier: JWTVerifier = JWT
.require(algorithm)
.withIssuer(issuer)
.build()
我们将不胜感激。
【问题讨论】:
-
是 gradle 项目吗?您在依赖项中有杰克逊库吗?哪个版本?
-
能否分享一个完整的代码 sn-p 或示例项目来重现
NoClassDefFoundError异常?jackson-databind依赖项可能存在一些问题,因为java-jwt工件需要它 search.maven.org/artifact/com.auth0/java-jwt/3.18.1/jar。