该文章旨在记录开发中遇到的一些异常,以供遇到似错误进行参考修改
一、项目在多个环境下切换,有一次启动后编译失败,报异常
背景:项目在不同环境下有对应的分支,切换分支后运行项目,报错如下
错误:Kotlin: Module was compiled with an incompatible version of Kotlin. The binary version of its metadata is 1.6.0, expected version is 1.1.16.
解决:点击“构建”>>“重建项目”,重建完成后,再次启动项目即可
二、用新的IDEA导入项目文件,maven刷新后注解还是爆红
背景:一直用的IDEA版本太低了,一些插件不兼容,安装了高版本然后导入项目,自动检测到maven之后,刷新,下载依赖,发现所有注解都爆红,maven clean,install 没有用
解决:清除缓存并重启,解决问题
三、紧接第二个问题,清除缓存后注解爆红解决了,运行项目报错找不到启动类
错误: 找不到或无法加载主类 com.xxx.xxx.xxxApplication
解决:项目右侧maven ,找到生命周期,重新执行 clean ->install ,完成后重试,问题解决
四、本地调试Redis时,出现一直连不上服务器的情况,但是用管理工具可以连接
背景:本地的Redis安装后,通过server.exe,cli.exe连接没有问题,Springboot项目引入依赖后测试,连接redis错误
出现如下错误
org.springframework.data.redis.RedisConnectionFailureException: Unable to connect to Redis;
nested exception is org.springframework.data.redis.connection.PoolException: Could not get a resource from the pool;
nested exception isio.lettuce.core.RedisConnectionException: Unable to connect to 127.0.0.1:6379
按照网上方案调试了好久,问题依然没有解决,偶然间看了下第一个错误提示后面的提示,好像是现在的配置是不需要密码的,但是我在配置文件里面加了密码(图中是改后的),再去看看redis.conf配置文件中果然没有要求密码
Caused by: io.lettuce.core.RedisCommandExecutionException: ERR Client sent AUTH, but no password is set
解决方案:去掉.properties文件中密码配置 ,重启redis服务即可