有没有办法在同一个项目中同时使用 auth0-spring-security-api 和 java-jwt?
Posted
技术标签:
【中文标题】有没有办法在同一个项目中同时使用 auth0-spring-security-api 和 java-jwt?【英文标题】:Is there a way to use both auth0-spring-security-api and java-jwt in the same project? 【发布时间】:2019-11-01 23:45:30 【问题描述】:我正在尝试在我的 Spring Boot 项目中使用 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 security。
如果我只使用auth0-spring-security-api
,JwtWebSecurityConfigurer
可以正常工作并检查我的令牌。但我不能使用 java-jwt
工件中包含的 JWT 类。
如果我在 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
的依赖项,我认为这与两个库存在某种冲突。有没有人有办法解决吗?谢谢
【问题讨论】:
【参考方案1】:解决了!如果有人遇到这个问题,解决方案是: 检查你的 pom.xml 和 auth0-spring-security-api 的 pom。从 auth0-spring-security-api 导入的 java-jwt 依赖必须和你的 pom 中的 java-jwt 一样。
【讨论】:
以上是关于有没有办法在同一个项目中同时使用 auth0-spring-security-api 和 java-jwt?的主要内容,如果未能解决你的问题,请参考以下文章