問題
上線時(shí)發(fā)現(xiàn)好多error日志,定睛一看是報(bào)警功能的異常,要呵呵??串惓4蟾攀沁@樣:

image.png
怎么可能,其它地方調(diào)用這個(gè)方法正常,IDEA里顯示的代碼也是有這個(gè)方法的。
解決思路
這個(gè)方法真的存在嗎?仔細(xì)對(duì)比方法簽名。報(bào)錯(cuò)方法簽名后面有個(gè)V,這個(gè)代表方法返回值是void類型。
問題復(fù)現(xiàn)
common1、common2、middle、tester分表代表基礎(chǔ)包版本1、基礎(chǔ)包版本2、對(duì)基礎(chǔ)包的封裝、測試類
基礎(chǔ)模塊
兩個(gè)版本差別是一個(gè)沒有返回值,一個(gè)有返回值

image.png

image.png
中間包
它引用common1(必須是common1),簡單封裝一下。

image.png
測試包
它應(yīng)用common2和middle,middle把common1排除掉。

image.png
問題分析

image.png
看middle中的SendMsg字節(jié)碼,發(fā)現(xiàn)使用Producer的send方法是不帶返回值的。
由于tester升級(jí)了common1為common2,導(dǎo)致Producer沒有那個(gè)方法了。

image.png