首頁  >  文章  >  後端開發  >  解決golang中vendor引起的相同類型,卻提示類型不一樣問題

解決golang中vendor引起的相同類型,卻提示類型不一樣問題

藏色散人
藏色散人轉載
2021-01-07 16:32:522352瀏覽

下面由golang教程專欄給大家介紹解決golang中vendor引起的相同類型,但是卻提示類型不一樣問題的方法,希望對需要的朋友有所幫助!

解決golang中vendor引起的相同類型,卻提示類型不一樣問題

問題:

在專案中,使用了自己基於開源專案gin進行二次開發的框架,在註冊路由的時候提示了一個錯誤訊息,如下:

cannot use func literal (type func(*"github.com/dazhenghu/cms/vendor/github.com/gin-gonic/gin".Context)) as type "github.com/gin-gonic/gin".HandlerFunc in argument to indexInstace.Controller.Get

分析:

#從提示可以看出,雖然都是func(*Context) 類型(註: HandlerFunc類型就是func(*Context),可自行到gin源碼中查看),但是兩者的包不同,很明顯,前者是我的項目中的vendor下的包,提示這一包路徑不一致問題,應該是專案載入的套件不同導致

解決:

透過執行新增依賴指令:govendor add github.com/dazhenghu/ginApp/controller,即將自己開發的框架也先加到vendor中管理,再執行,就不報這個錯誤了

更多相關技術文章,請造訪go語言教學專欄!

以上是解決golang中vendor引起的相同類型,卻提示類型不一樣問題的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除