目录
问题现象:
最近在学习Dubbo,发现启动微服务的时候出现如下报错:
Caused by: javassist.compiler.CompileError: getPropertyValue (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; in org.apache.dubbo.common.bytecode.Wrapper0: inconsistent stack height -1
问题分析:
从问题信息中可以看出关键字:getPropertyValue
所以不难猜测这是因为dubbo去扫描方法的时候,识别到了某个字段/成员变量的getter方法,但是却发现没有这个get方法对应的字段/成员变量的存在,所以报错了:
所以要解决这个问题也很简单,就是在dubbo的接口类中不要定义带get前缀的方法!
解决方法:
1、dubbo的接口类中的 getInfo() 改为 info():
2、dubbo接口类的实现类中 getInfo() 改为 info():
3、Controller中注入dubbo实现类并调用方法:
4、启动成功:
5、调用dubbo接口实现rpc成功:
消费者:
生产者: