spring-boot框架dubbo在controlle中r注解@Reference注入service,但是调用方法时候,service报null空指针异常

        今天遇到一件奇怪的事情,之前都是很好的能正常运行,但是今天突然发现注解出问题,@Reference注解报错,null空指针异常,问题是代码都没有改动过,就突然这样。部分代码如下图:



然后我百度查到的方法基本没用,但是这两篇文章有参考意义,大家可以看看:

https://blog.csdn.net/zhou_java_hui/article/details/53039491

https://blog.csdn.net/magic_hwz/article/details/50772722

因为我之前运行是好的,并且spring-boot,本来就是约定大于配置,且初衷就是简化配置的,大部分解决方法是要重新加配置文件,所以被我直接否定了。第二篇文章中的扫描controller注入的顺序这个引起了我的注意,我在想是不是我启动的顺序有问题,下图是我项目的结构


项目设计之初是想分布式部署,所以分了客户端,和服务端。经过测试发现真的是程序启动的顺序问题。

之前都是先启动server服务端,然后在启动client端的,但是这两天项目有点赶,调试的时候,想快点启动,所以几乎是同时启动server和client程序,甚至client先启动,然后就导致了本文标题的错误。之后我就老老实实的先启动server程序,在启动client。

刚开始接触spring-boot,很多问题不是很了解,这个主要就是记录一下,可以跟大家一起讨论讨论。或许可以不按照顺序启动,但是目前能力,时间有限,暂未研究;还有热部署启动也尝试过,但是会遇到一些问题,后续也会研究,就不要吐槽我调试的时候,每次启动了。


原文地址:https://www.cnblogs.com/timeout/p/10145637.html