登录
首页 >  Golang >  Go问答

在 Visual Studio 代码中启用“供应商”文件夹支持指南

来源:stackoverflow

时间:2024-03-21 23:06:30 359浏览 收藏

在 Visual Studio Code 中启用供应商文件夹支持,需要在项目中创建 `go.mod` 文件。`go.mod` 文件将指定项目的模块路径,并指示编译器在供应商文件夹中查找依赖项。这样,可以避免将供应商文件夹中的软件包复制到其他路径,从而简化了依赖项管理。

问题内容

我最近转向 go 项目的 visual studio code 免费编辑器。我执行了从安装 go 插件等开始的所有初始设置。

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

它给出了以下错误。

20:5: cannot find package "github.com/gorilla/mux" in any of:
    /usr/local/cellar/[email protected]/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”。

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

您能帮助我如何配置并使其在可视化源代码编辑器中工作吗?我需要安装任何插件才能使其工作吗?我正在使用版本:1.44.0 的可视源代码编辑器。


解决方案


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

go mod init github.com/username/project

或将项目移至 GOPATH

今天关于《在 Visual Studio 代码中启用“供应商”文件夹支持指南》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>