在将我的Spring boot项目版本升到2.0.3,集成了Spring Security OAuth2(默认版本),redis(默认版本),并且用redis来存储token,项目正常启动后,请求token时报错:
nested exception is java.lang.NoSuchMethodError: org.springframework.data.redis.connection.RedisConnection.set([B[B)V这个错误是因为版本问题,Spring-data-redis 2.0版本中set(String,String)方法被弃用了.
在spring-cloud-starter-security中排除默认的spring-security-oauth2依赖,然后添加2.3.3.RELEASE新版本的spring-security-oauth2依赖.
<!--spring security 、oauth、jwt依赖--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-security</artifactId> <exclusions> <!--旧版本 redis操作有问题--> <exclusion> <artifactId>spring-security-oauth2</artifactId> <groupId>org.springframework.security.oauth</groupId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.springframework.security.oauth</groupId> <artifactId>spring-security-oauth2</artifactId> <version>2.3.3.RELEASE</version> </dependency>