首页 > 解决方案 > InMemoryClientRegistrationRepository:工厂方法抛出异常;嵌套异常是 java.lang.NoSuchFieldError: PASSWORD

问题描述

我在我的独立应用程序中使用带有 spring-security 和 OAuth2 授权的 spring-boot,但是我遇到了一个无法修复的意外错误。这与ClientRegistrationRepository我的工厂方法有关。我试图自己实现这个接口,但我遇到了同样的问题。细节:

库: -spring
-boot-starter:2.1.9.RELEASE
-spring-security-core、spring-security-web、spring-security-config、spring-security-oauth2-client、spring-security-oauth2-jose:5.2 .0.释放

Stacktrace:这里
片段:这里

就这样。提前感谢您的帮助:)

标签: spring-securityspring-oauth2

解决方案


这似乎是库问题:我发现 ClientRegistration 类中有以下代码:

  } else if (AuthorizationGrantType.PASSWORD.equals(this.authorizationGrantType)) {
            this.validatePasswordGrantType();

但是 AuthorizationGrantType 类不包含这样的字段。我使用了 5.1.6.RELEASE 并且它有所帮助。


推荐阅读