为什么 VS Code 不使用 Go 自动导入包?

Joh*_*pia 17 go visual-studio-code

您好,我是 Go 新手,目前使用 VS Code 作为 IDE。

我对后端开发完全陌生,我正在尝试使用 Go 来完成这项工作。

当我通过 Youtube 自学时,我遇到了一个问题。

问题是 VS Code 不会自动导入我制作的任何包。

我不知道为什么,但我确实得到了一些线索。

我猜

  • 我的编辑器无法识别包的位置

我的项目也位于 C:\Users\John\Desktop\GoProjects 而 gopath=C:\Users\John\go 和 goroot=c:\go

谁能给我解决这个问题吗?

主程序 myapp/app.go

Tar*_*han 9

就我而言,禁用有效gopls并轻松解决了问题。

File -> Preferences -> Settings -> Use Language Server (Type in search box and uncheck it)

请阅读此处的完整线程以获取详细信息:https ://github.com/microsoft/vscode-go/issues/2473

您还可以使用命令面板(Cntrl + Shift + P)导入缺失的库,这也非常简单。

打开命令面板并运行命令Go: Add Import以获取可导入到 Go 文件中的包列表。选择一个,它将被添加到 Go 文件的导入块中。


Spa*_*shi 5

我的 GOPATH 或 GOROOT 没有问题,但自动导入在我的情况下不起作用,并且我的代码中有一些弯曲的警报。我通过以下简单的 3 个步骤解决了这个问题。

  1. CTRL + SHIFT + P 然后输入 go tool

在此输入图像描述

  1. 选择安装/更新工具,然后选择所有复选框

在此输入图像描述

  1. 单击“确定”并下载所有包。现在关闭并重新打开 vs code 它将删除所有波浪线和自动导入包

我做了同样的事情。现在一切都很完美:)。


Joh*_*pia 0

解决了。但它并不是 100% 完美的。

我不知道为什么 Go 对此如此不方便,但这是我的解决方案。

  1. 将 GOPATH 设置为我的工作目录,在本例中为 C:/Users/John/GoProjects

这部分很重要,因为这是编辑器开始相对路径的路径

  1. 创建三个目录;bin、pkg、src

  2. Ctrl + Shift + P => goinstall 安装/更新工具

  3. 在main.go文件中,手动导入包。

在此输入图像描述

我希望这可以帮助面临同样问题的人!快乐编码!

  • vscode 自动为我完成所有这些工作。但后来我在我的项目中使用了 go 模块。在项目目录中执行 `go mod init packagename` 就完成了。 (2认同)