dubbo项目用Idea搭建过程中有一个很容易忽略的坑,容易导致服务接口和实际返回数据不一致的情况:
项目结构:
dubbo 父项目(主要是项目依赖)
dubbo-api 接口及实体类
dubbo-service 服务提供者
dubbo-web web项目,服务消费者
原因分析: 同一个project下面创建多个模块时(注意:特别是dubbo-parent不能导入为模块),在配置web项目artifact的时候容易误将dubbo-service,dubbo-api的编译文件同时放进去,这样导致web项目中controller直接调用本地service,而不是dubbo中注册的服务。
当对idea不是很熟悉的时候建议不要讲dubbo服务提供者和dubbo服务消费者放一个项目中,容易出现问题。
错误的配置对应的artifact文件夹:

参考模块配置:

本文解析了使用IDEA搭建Dubbo项目时,因模块配置不当导致服务接口调用错误的问题。详细阐述了在同一project下创建多个模块时,如何避免将服务提供者和消费者的编译文件错误地包含在web项目的artifact中,确保调用的是远程注册的服务而非本地服务。
959

被折叠的 条评论
为什么被折叠?



