问题:
在项目中,使用了自己基于开源项目gin进行二次开发的框架,在注册路由的时候提示了一个错误信息,如下:
cannot use func literal (type func(*"/dazhenghu/cms/vendor//gin-gonic/gin".Context)) as type "/gin-gonic/gin".HandlerFunc in argument to
分析:
从提示中可以看出,虽然都是 func(*Context) 类型(注:HandlerFunc类型就是func(*Context),可自行到gin源码中查看),但是两者的包不同,很明显,前者是我的项目中的vendor下的包,提示这一包路径不一致问题,应该是项目加载的包不同导致
解决:
通过执行添加依赖命令:govendor add /dazhenghu/ginApp/controller,即将自己开发的框架也先加到vendor中管理,再次执行,就不报这个错误了