猿问

Spring boot使用Redis时,报错,有redisTemplate和stringRedisTemplate两个bean?

代码在之前的工程中是好使的,新工程升了Springboot 版本,redis依赖从spring-boot-start-redis变成了spring-boot-start-data-redis,就显示有两个bean冲突,使用@Qualifier()注解指定一个后还是报一样的错误,求解。


 Error starting ApplicationContext. To display the auto-configuration report re-run your application with 'debug' enabled.
2017-05-13 20:11:30.651 ERROR 1869 --- [           main] o.s.b.d.LoggingFailureAnalysisReporter   : 

***************************
APPLICATION FAILED TO START
***************************

Description:

Parameter 0 of method setRedis in cn.andhub.authorization.manager.impl.RedisTokenManager required a single bean, but 2 were found:
    - redisTemplate: defined by method 'redisTemplate' in class path resource [org/springframework/boot/autoconfigure/data/redis/RedisAutoConfiguration$RedisConfiguration.class]
    - stringRedisTemplate: defined by method 'stringRedisTemplate' in class path resource [org/springframework/boot/autoconfigure/data/redis/RedisAutoConfiguration$RedisConfiguration.class]


Action:

Consider marking one of the beans as @Primary, updating the consumer to accept multiple beans, or using @Qualifier to identify the bean that should be consumed

繁华开满天机
浏览 767回答 4
4回答

斯蒂芬大帝

兄台,最后解决了吗?我也遇到了 一样一样的

慕容3067478

我今天也遇到了这个问题,后来发现是我把变量名写错了。正确的:@Autowiredprivate RedisTemplate redisTemplate;错误的:@Autowiredprivate RedisTemplate redistemplate;把T写成小写的了。后改成大写就项目启动正常了。。。
随时随地看视频慕课网APP

相关分类

Java
我要回答