1. 程式人生 > >com.alibaba.dubbo.rpc.RpcException: Failed to invoke the method

com.alibaba.dubbo.rpc.RpcException: Failed to invoke the method

網上查了很多方法都不好使。(dubbo介面中傳輸的物件沒有實現序列化;或者是dubbo provider沒有啟動造成的)
因為我insert資料的時候每次都會插入三條重複的資料到資料庫中,說明dubbo provider還是提供了服務的。
最後陰差陽錯把專案重新maven clean 然後install了一下,然後就ok了。

然後查了一下maven clean:是清除target目錄下之前打好的jar包或者是war包;

maven build:重新對maven專案進行打包;
maven install:是上面倆命令的集合。

但單獨執行maven install 並沒有效果。下面是網上搜到的原因

maven在執行一個生命週期的命令的是時候將會執行之前的所有生命週期操作,比如執行mvn install,會執行前面一系列的動作包括 compile , package , test 等,具體請檢視maven的官方文件。這個特性使maven的命令更加簡潔易用。

再來分析原來的問題,為什麼修改的內容不生效,肯定是最終打出來的war包中的內容沒有更新,而war包中會依賴其他子工程的jar包,如果jar 包沒有更新過,那war包呼叫老的jar包也會導致新內容不生效。定位到問題的原因應該是jar包沒有用最新的資源(java或者配置檔案)。
maven clean可以保證jar包最新。一般可以直接maven install來節約時間,但保險一點還是用maven clean install