如何在 Visual Studio 代码中允许“供应商”文件夹支持

IT小君   2022-11-11T00:02:59

我最近搬到了 Go 项目的 Visual Studio Code 免费编辑器。我从安装 Go 插件等开始执行了所有初始设置。

vendor但是,无法识别存储在我的项目文件夹中的包。之前使用 Goland 编辑器时,没有问题。

它给出了以下错误。

20:5: cannot find package "github.com/gorilla/mux" in any of:
    /usr/local/Cellar/go@1.12/1.12.17/libexec/src/github.com/gorilla/mux (from $GOROOT)
    /Users/abc/workspace/proj/src/github.com/gorilla/mux (from $GOPATH)
    /Users/abc/workspace/projgopath/src/github.com/gorilla/mux
exit status 1
Process exiting with code: 1

我的项目文件结构如下:

proj
  +---src
       +---vendor

我的 settings.json 文件如下:

{
    "go.gopath": "/Users/abc/workspace/proj/:/Users/abc/workspace/projgopath/",
    "go.lintOnSave": "off",
    "go.vetOnSave": "off",
    "javascript.updateImportsOnFileMove.enabled": "always",
    "go.toolsGopath": "/Users/abc/workspace/toolsgopath",
    "go.goroot": "",
    "eslint.runtime": ""
}

据我所知,我们不必像上面提到的项目路径那样指定 GOPATH 下的 'vendor' 文件夹。当 Go 编译器尝试解析/定位其他应用程序代码而不是供应商时,它会隐式添加“src”。

作为一种解决方法,我可以将安装的所有 go 软件包复制'vendor'到其中,"/Users/abc/workspace/projgopath/src"但我试图避免它,因为它是一项手动任务。

你能帮助我如何在可视源代码编辑器中配置和使其工作吗?我是否必须安装任何插件才能使其正常工作?我正在使用版本:Visual Source Code 编辑器的 1.44.0。

点击广告,支持我们为你提供更好的服务
评论(1)
IT小君

您需要创建一个 go.mod 文件

go mod init github.com/username/project

或将项目移动到您的GOPATH

2022-11-11T00:02:59   回复