记一次springboot配置redis项目启动时的一个奇怪的错误

 更新时间:2022年02月22日 15:40:56   作者:vXZH  
这篇文章主要介绍了spring boot配置redis项目启动时的一个奇怪的错误,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

springboot配置redis项目启动时的错误

在刚开始学redis时,我照着网上的教程,把redis和jedis整合到spring boot,整合完毕后,启动项目总是失败

总是爆出下面的错误

Correct the classpath of your application so that it contains a single, compatible version of org.springframework.data.repository.config.RepositoryConfigurationSource

***************************
APPLICATION FAILED TO START
***************************
 
Description:
 
An attempt was made to call the method org.springframework.data.repository.config.RepositoryConfigurationSource.getAttribute(Ljava/lang/String;)Ljava/lang/String; but it does not exist. Its class, org.springframework.data.repository.config.RepositoryConfigurationSource, is available from the following locations:
 
jar:file:/D:/m2/repository/org/springframework/data/spring-data-commons/2.0.10.RELEASE/spring-data-commons-2.0.10.RELEASE.jar!/org/springframework/data/repository/config/RepositoryConfigurationSource.class
 
It was loaded from the following location:
 
file:/D:/m2/repository/org/springframework/data/spring-data-commons/2.0.10.RELEASE/spring-data-commons-2.0.10.RELEASE.jar
 
Action:
 
Correct the classpath of your application so that it contains a single, compatible version of org.springframework.data.repository.config.RepositoryConfigurationSource
 
2018-11-22 13:03:51.398 INFO 2196 --- [ main] ConfigServletWebServerApplicationContext : Closing org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@1a451d4d: startup date [Thu Nov 22 13:03:50 CST 2018]; root of context hierarchy
 
Process finished with exit code 1

然后我在网上找了很久,都没有关于这个错误的解决办法,偶然看到一篇博客,它在启动项目时也出现了类型错误,也是jar包冲突,然后那个博主是通过改redis和jedis的版本号解决的,我也把版本号都改成和那个博主相同的,但启动后还是出现相同的错误。

后来就想如果我把版本号都去掉,让“spring-boot-starter-parent”自动为我们提供对应版本的jar包,这样就可以避免自己指定版本号时,可能会有一些意想不到的冲突。于是我就把redis和jedis的版本号都去掉,果然项目就可以正常启动了~~

What a strange error..

解决springboot项目启动时redis报错

出现ERR Client sent AUTH, but no password is set的问题

首先看下我springboot配置redis的部分如图:

显然上面配置了redis的启动密码为123456,

本地redis版本为3.0.1 在redis.windows.conf文件中requirepass内容也修改了密码为123456,这里说下,在去除requirepass前面的#号时一定注意还有一个空格要去除,不然会报错:

Invalid argument during startup: unknown conf file parameter :  requirepass

这时,说明redis密码与springboot的一致,接下来就是启动redis再启动springboot。

我员来的启动方式就是进入到redis的安装目录,执行redis-server.exe,然后正常启动。但是在启动springboot后,调用redis时就报错了,如图:

一开始以为是我Pom.xml文件中引入的为2.9.0的redis依赖导致的版本不兼容,一直去找Redis的2.9.0的安装包竟然网上没有。浪费了半天时间。

后来才发现,这个报错是告诉我没有设置密码。原因就是启动时的方法错误。

请务必记住,启动本地redis,如果设置了密码记得带上配置文件,启动命令完整为:

redis-server.exe redis.windows.conf

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Java将Word文档转换为PDF文件的几种常用方法总结

    Java将Word文档转换为PDF文件的几种常用方法总结

    这篇文章主要介绍了Java将Word文档转换为PDF文件的四种常用方法,分别使用ApachePOI+iText、Aspose.Words for Java、Docx4j和JODConverter,这些库各有优点,但在使用时需要注意库与Java环境的兼容性、安装所需依赖、转换速度和资源消耗,需要的朋友可以参考下
    2024-10-10
  • Java中生成随机数的实现方法总结

    Java中生成随机数的实现方法总结

    这篇文章主要介绍了Java中生成随机数的实现方法总结,其中多线程并发的实现方式尤为exciting,需要的朋友可以参考下
    2015-11-11
  • SpringCache的基本使用方法

    SpringCache的基本使用方法

    Spring Cache利用了AOP,实现了基于注解的缓存功能,并且进行了合理的抽象,业务代码不用关心底层是使用了什么缓存框架,只需要简单地加一个注解,就能实现缓存功能了,本文介绍SpringCache的基本使用方法,感兴趣的朋友一起看看吧
    2024-01-01
  • Java中抽象类与方法的重写方式

    Java中抽象类与方法的重写方式

    这篇文章主要介绍了Java中抽象类与方法的重写方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • Spring 依赖注入实现示例

    Spring 依赖注入实现示例

    这篇文章主要介绍了Spring 依赖注入实现示例的相关资料,帮助大家更好的理解和使用spring框架,感兴趣的朋友可以了解下
    2020-11-11
  • java实现字符串反转

    java实现字符串反转

    这篇文章主要为大家详细介绍了java实现字符串反转,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • 长度最小的子数组题目详解(Java版)

    长度最小的子数组题目详解(Java版)

    这篇文章主要给大家介绍了关于长度最小的子数组(Java版)的相关资料,这到题来自力扣,通过学习本文对大家理解这道题目有很大的帮助,需要的朋友可以参考下
    2023-12-12
  • SpringBoot+Mybatis项目使用Redis做Mybatis的二级缓存的方法

    SpringBoot+Mybatis项目使用Redis做Mybatis的二级缓存的方法

    本篇文章主要介绍了SpringBoot+Mybatis项目使用Redis做Mybatis的二级缓存的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-12-12
  • springcloud项目改名的操作方法

    springcloud项目改名的操作方法

    这篇文章主要介绍了springcloud项目改名的操作方法,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • Java 不同版本的 Switch语句

    Java 不同版本的 Switch语句

    本文主要介绍了Java不同版本的Switch语句,自Java13以来,Switch表达式就被添加到Java核心库中,下面我们将介绍旧的Java Switch语句和新的Switch语句的区别,需要的朋友可以参考一下
    2022-06-06

最新评论