下面由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语言教程栏目!

更多相关文章

  1. go是强类型语言么
  2. go语言 类型转换表示什么
  3. 疯狂XML学习笔记(8)---------schema 的简单类型
  4. 疯狂XML学习笔记(9)-------------Schema内置类型
  5. XML中的DTD文档类型定义详细介绍
  6. XML中的DTD文档类型定义完全解析的示例代码(图)
  7. XML文档类型声明
  8. 关于XML文档类型的详细介绍
  9. 推荐10款连接类型实例教程

随机推荐

  1. Android JNI简单实例
  2. android中context
  3. android studio常用控件
  4. Android图表控件MPAndroidChart——曲线
  5. android Makefile
  6. Android requires compiler compliance l
  7. android跨进程通讯一:android中跨进程通
  8. 初探Android
  9. Android概述
  10. Android -- java代码设置margin