首先先说明这个项目用到的主要的技术栈内容:
MyBatisPlus+SpringBoot+SpringCloud+Kafka+Apollo

中间件项目启动报错,一直找不到问题出在哪里,经过将近两天的不断试错,终于解决了这个问题。

一开始我把它从github上拉下来配置然后运行是不报错的,但是用了一小段时间后,就发现各种问题,我这种小白顿时慌乱,只能想到再去拉一份代码,重新配置运行,结果就报启动错误:

在网上搜了很多资料,都没有找到准确有效的解决办法,然后就仔细看了一下报错的原因,结合Apollo和Kafka等插件的功能,最终找到了报错的原因。

因为项目启动时本地Apollo会根据启动url动态获取Apollo上已经配置好的文件到本地,那么就存在问题:
如果在本地使用配置文件中的内容,但是之后又在Apollo上做了修改,比如删除了某条,那么在本地value就在新获取的配置文件中找不到,就会报错,最终我发现它会报启动错误。
例如这两个value在配置文件中找不到,那么就会报启动错误

所以排除错误的思路是可以将value在配置文件中找一下,看能不能找到,找不到的就先注释掉。

我的错误比上面的描述稍微复杂一点,就是我本地的Apollo启动出现延时错误(这个错误是在我解决了启动错误才在日志中显示出来),并没有将最新的配置文件在本地更新,而我以为在Apollo上新配置的内容已经获取在本地了,那么就会出现我前面所说的启动错误。

最终项目终于跑起来了。

但是目前我的Apollo延时错误问题还没来得及解决,一开始我的思路是就不用动态配置,直接在本地添加上去。但很奇怪还是报错了,这个问题后面如果找到了原因会再整理出来。

补充:
我的Apollo延时错误问题,其实就是将idea重启了一下

然后再运行就没有报错了

如果还是有问题(非启动报错问题),就把下面的文件删掉,重新加载一份

内容有不足的地方,希望大家能够提出来^_^

如果文章对你有帮助,不要忘了给我点个赞吼( ̄▽ ̄)~
欢迎关注我的微信公众号:松鼠技术站