下面由golang教程專欄給大家介紹解決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中文網其他相關文章!