关于IDEA在debug时私自调用toString()方法的问题,会引起dubbo异常

工程启动时,dubbo抛出异常如下:

<dubbo:reference interface="" /> interface not allow null!

解决方式:

1,IDEA在debug时,当debug到某个对象时,会调用对象的toString()方法,用来在debug界面显示对象信息。

2,IDEA调用toString()方法时,即使在toString()方法中设置了断点,该断点也不会被触发,也就是说,开发者多数情况下不会知道toString()方法被调用了。

3,多数情况下调用一下toString()方法没有什么问题,但是也有例外,比如重写了toString()方法的类,随意的调用toString()方法会导致未知的问题。

4,比如Dubbo的AbstractConfig类,对这个类的debug会导致其子类ReferenceConfig的initialized属性错误的被修改为true,进而无法正确的生成Dubbo代理。

5,IDEA在debug时调用toString()方法的情况是可以在配置中关掉的,配置位置是:

红框的 勾 去掉就可以了。

扫描二维码关注公众号,回复: 16803683 查看本文章

转载至:https://blog.csdn.net/lkforce/article/details/90479650

猜你喜欢

转载自blog.csdn.net/Qensq/article/details/113889586