1、错误出现的场景:今天本地模拟dubbo 的RPC远程调用,但是调用的服务总是提示“空指针异常”。
出现上述情况的原因:只有一种可能需要扫描的service 对象,dubbo 扫描服务对象失败,而造成失败的原因:一:缺少dubbo 的jar 文件,二、dubbo 扫描包路径配置错误。
我今天所犯的错误是第二种。
看源码:
dubbo 服务端消费代码错误截图:
后面仔细检查:dubbo 扫描包路径,发现是扫描包路径配置错误,导致service对象无法实例化
错误配置文件
## \u907F\u514D\u548C server \u5DE5\u7A0B\u7AEF\u53E3\u51B2\u7A81
server.port=8081
## Dubbo \u670D\u52A1\u6D88\u8D39\u8005\u914D\u7F6E
spring.dubbo.application.name=consumer
spring.dubbo.registry.address=zookeeper://127.0.0.1:2181
## dubbo \u626B\u63CF\u5305
spring.dubbo.scan=org.spring.springboot.dubbo //错误包路径配置
正确配置文件
## \u907F\u514D\u548C server \u5DE5\u7A0B\u7AEF\u53E3\u51B2\u7A81
server.port=8081
## Dubbo \u670D\u52A1\u6D88\u8D39\u8005\u914D\u7F6E
spring.dubbo.application.name=consumer
spring.dubbo.registry.address=zookeeper://127.0.0.1:2181
## dubbo \u626B\u63CF\u5305
spring.dubbo.scan=com.spring.springboot.dubbo //正确包路径配置