我看到了类似的问题here。但我无法解决我的问题。
我正在使用dep初始化项目并添加了第一个依赖项“Echo”。现在文件夹结构看起来像这样
|--server
| |--server.go
|--vendor
|--main.go
server.go具有以下代码
package server
import (
"net/http"
"github.com/labstack/echo"
)
// TestController : Test controller
func TestController(c echo.Context) error {
return c.String(http.StatusOK, "Hello, World!")
}
和main.go有
package main
import (
"github.com/labstack/echo"
"github.com/sfkshan/pos/server"
)
func main() {
e := echo.New()
e.GET("/", server.TestController)
e.Logger.Fatal(e.Start(":1323"))
}
现在vscode显示警告
无法使用server.TestController(类型 FUNC( “github.com/sfkshan/pos/vendor/github.com/labstack/echo” .Context) 错误)作为类型“github.com/labstack/echo".HandlerFunc参数 e.GET
我不确定为什么会这样?如果我删除供应商文件夹文件夹,则错误消失。但是在运行dep ensure
之后(在这种情况下,创建了预期的供应商文件夹)再次出现错误。