有没有办法在同一个项目中同时使用 auth0-spring-security-api 和 java-jwt?

Is there a way to use both auth0-spring-security-api and java-jwt in the same project?

我正在尝试在我的 Spring 引导项目中使用 auth0 和 JWT。我已经导入了这些依赖项:

<dependency>
    <groupId>com.auth0</groupId>
    <artifactId>auth0-spring-security-api</artifactId>
    <version>1.2.1</version>
</dependency>
<dependency>
    <groupId>com.auth0</groupId>
    <artifactId>java-jwt</artifactId>
    <version>3.8.1</version>
</dependency>

我还使用 JwtWebSecurityConfigurer 配置 spring 安全性。

如果我只使用 auth0-spring-security-apiJwtWebSecurityConfigurer 可以正常工作并检查我的令牌。但是我无法使用 java-jwt 工件中包含的 JWT class。

如果我在 pom 中导入两个依赖项,它会停止工作,当 Spring 安全检查我的令牌时,我会收到错误消息:

java.lang.NoSuchMethodError: com.auth0.jwt.interfaces.Verification.withIssuer(Ljava/lang/String;)Lcom/auth0/jwt/interfaces/Verification;

此外,我知道 java-jwt 库是 auth0-spring-security-api 的依赖项,我认为这两个库之间存在某种冲突。有没有人有办法解决吗?谢谢

已解决!如果有人遇到这个问题,解决方案是: 检查你的 pom.xml 和 auth0-spring-security-api 的 pom。从 auth0-spring-security-api 导入的 java-jwt 依赖项必须与 pom 中的 java-jwt 相同。