您当前的位置:周俊奇博客 > 项目

VS Code安装go插件失败原因分析以及解决方案

时间:2022-09-08 10:20:02

VSCode是我们开发go程序的常用工具,但是安装VSCode成功后,创建一个.go文件会有如下提示:

8b288b5143cc0beb40f2edc8825ac228_2022090711383026.png

这个是vscode提示你需要安装go插件,但是当你点击install all进行安装时,发现会安装失败。

Installing 8 tools at D:\pragrams\go\bin gocode gopkgs go-outline go-symbols dlv godef goreturns golintInstalling github.com/mdempsky/gocode FAILEDInstalling github.com/uudashr/gopkgs/cmd/gopkgs FAILEDInstalling github.com/ramya-rao-a/go-outline FAILEDInstalling github.com/acroca/go-symbols FAILEDInstalling github.com/derekparker/delve/cmd/dlv FAILEDInstalling github.com/rogpeppe/godef FAILEDInstalling github.com/sqs/goreturns FAILEDInstalling golang.org/x/lint/golint FAILED8 tools failed to install.gocode:Error: Command failed: D:\install\go\bin\go.exe get -u -v github.com/mdempsky/gocodego: missing Git command. See https://golang.org/s/gogetcmdpackage github.com/mdempsky/gocode: exec: "git": executable file not found in %PATH%go: missing Git command. See https://golang.org/s/gogetcmdpackage github.com/mdempsky/gocode: exec: "git": executable file not found in %PATH%gopkgs:Error: Command failed: D:\install\go\bin\go.exe get -u -v github.com/uudashr/gopkgs/cmd/gopkgsgo: missing Git command. See https://golang.org/s/gogetcmdpackage github.com/uudashr/gopkgs/cmd/gopkgs: exec: "git": executable file not found in %PATH%go: missing Git command. See https://golang.org/s/gogetcmdpackage github.com/uudashr/gopkgs/cmd/gopkgs: exec: "git": executable file not found in %PATH%go-outline:Error: Command failed: D:\install\go\bin\go.exe get -u -v github.com/ramya-rao-a/go-outlinego: missing Git command. See https://golang.org/s/gogetcmdpackage github.com/ramya-rao-a/go-outline: exec: "git": executable file not found in %PATH%go: missing Git command. See https://golang.org/s/gogetcmdpackage github.com/ramya-rao-a/go-outline: exec: "git": executable file not found in %PATH%go-symbols:Error: Command failed: D:\install\go\bin\go.exe get -u -v github.com/acroca/go-symbolsgo: missing Git command. See https://golang.org/s/gogetcmdpackage github.com/acroca/go-symbols: exec: "git": executable file not found in %PATH%go: missing Git command. See https://golang.org/s/gogetcmdpackage github.com/acroca/go-symbols: exec: "git": executable file not found in %PATH%dlv:Error: Command failed: D:\install\go\bin\go.exe get -u -v github.com/derekparker/delve/cmd/dlvgo: missing Git command. See https://golang.org/s/gogetcmdpackage github.com/derekparker/delve/cmd/dlv: exec: "git": executable file not found in %PATH%go: missing Git command. See https://golang.org/s/gogetcmdpackage github.com/derekparker/delve/cmd/dlv: exec: "git": executable file not found in %PATH%godef:Error: Command failed: D:\install\go\bin\go.exe get -u -v github.com/rogpeppe/godefgo: missing Git command. See https://golang.org/s/gogetcmdpackage github.com/rogpeppe/godef: exec: "git": executable file not found in %PATH%go: missing Git command. See https://golang.org/s/gogetcmdpackage github.com/rogpeppe/godef: exec: "git": executable file not found in %PATH%goreturns:Error: Command failed: D:\install\go\bin\go.exe get -u -v github.com/sqs/goreturnsgo: missing Git command. See https://golang.org/s/gogetcmdpackage github.com/sqs/goreturns: exec: "git": executable file not found in %PATH%go: missing Git command. See https://golang.org/s/gogetcmdpackage github.com/sqs/goreturns: exec: "git": executable file not found in %PATH%golint:Error: Command failed: D:\install\go\bin\go.exe get -u -v golang.org/x/lint/golintgo: missing Git command. See https://golang.org/s/gogetcmdpackage golang.org/x/lint/golint: exec: "git": executable file not found in %PATH%go: missing Git command. See https://golang.org/s/gogetcmdpackage golang.org/x/lint/golint: exec: "git": executable file not found in %PATH%

问题原因

在安装go插件时,会自动更新很多依赖库文件,都是从Github更新下来,但是因为Github的文件中,多有应用go官网中的文件,因为一些网络国内无法访问,网络缘故,不能直接下载,导致安装失败。

解决方案

方案1:快速方案

核心是配置国内下载源,我们需要修改如下两个go的环境配置:

go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn

配置好两个变量后,重新打开VSCode,点击右下方的install all重新安装,

或者,在vscode中使用Ctrl+Shift+P,输入>go:install,下面会自动搜索相关命令,我们选择Go:Install/Update Tools这个命令,选中所有插件,点击确定进行安装。

问题成功解决:

492f957ab4ac9dc0cfd334e637e26282_2022090711383027.jpg

方案2:环境变量中配置

Windows在电脑 -> 系统 -> 高级系统设置 -> 用户环境中分别新建GO111MODULE和GOPROXY两个用户变量,其值如下图所示:

GO111MODULE=on
GOPROXY=https://goproxy.cn,direct

或者也可以使用阿里源代理如下:

GO111MODULE=on
GOPROXY=https://mirrors.aliyun.com/goproxy/

配置好之后,使用Windows + R调出终端,输入cmd,通过go env命令查看go的环境变量配置是否设置成功。

方案3:vscode中配置

vscode编辑器的设置在:文件 -> 首选项 -> 设置 -> 用户 -> 应用程序 ->代理服务器路径下,如下图所示:

6b596e114919082a68f5a747d9d1256b_2022090711383028.png

标签: vscodego插件