【VSCode实战】Go插件依赖无法安装

使用VSCode来进行Go的开发有一段时间了,一直忍受着无法跳转定义的尴尬。正常情况下,VSCode安装Go插件后,应该就能具备跳转定义的功能,但因为一些未知的原因,换了工作环境,突然就不能用了。

以前在网上找到一些方法,尝试着解决,但都不适用。又因为工作有些忙,也就没继续坚持。这几天,工作稍微松了点,需要认真对待这一问题了。毕竟,跳转定义能省不少事,比单纯自己搜索、查找快太多了。

我卸载了当前的Go版本(1.22.4),重新安装了1.22.5。又把VSCode的Go相关插件全部卸载,再安装完成(只安装官方Go插件v0.42.0)。Ctrl+Shift+p打开命令面板,选择Go:Install/Update Tools,会出现6项依赖:

全部选中后,点击"确定"按钮,在"输出"窗口显示:

所有的工具都安装不上。网上和AI都不能给我满意的答案。我尝试将Go代理由https://goproxy.cn,direct切换为https://proxy.golang.com.cn,direct,尝试了加速,但都无法成功安装,于是我打算自己解决。

查看具体的错误,如下:

复制代码
"stderr": "github.com/go-delve/delve/cmd/dlv: go install github.com/go-delve/delve/cmd/dlv: mkdir d:\\Program files\\Go\\bin\"\\: The filename, directory name, or volume label syntax is incorrect.\n"

说我文件名、路径或卷标语法不正确,但也看不出什么啊!于是我查看go相关环境变量,把重要的贴出来:

复制代码
go env
set GO111MODULE=on
set GOBIN=d:\Program files\Go\bin"
set GOMODCACHE=D:\go\pkg\mod
set GOPATH=D:\go
set GOPROXY=https://proxy.golang.com.cn,direct
set GOROOT=C:\Program Files\Go
set GOVERSION=go1.22.5

看出问题了吧?其中GOBIN的最后有一个双引号。因为这个双引号,所以才会找不到路径,也无法安装上依赖。另外,我的GOPATH和GOMODCACHE都在D:\go目录下,没必要将GOBIN放在不同的目录,因此将GOBIN换了目录

复制代码
go env -w GOBIN=D:\go\bin

再次安装,安装成功。

相关推荐
止语Lab4 小时前
Go并发编程实战:Channel 还是 Mutex?一个场景驱动的选择框架
开发语言·后端·golang
王码码20355 小时前
Go语言的包管理:从GOPATH到Go Modules
后端·golang·go·接口
ZHANG13HAO10 小时前
Android 13 特权应用(Android Studio 开发)调用 AOSP 隐藏 API 完整教程
android·ide·android studio
白毛大侠10 小时前
Docker vs 虚拟机 vs Go 用户态/内核态:这三组概念
运维·docker·golang·kvm
咬_咬11 小时前
go语言学习(map)
开发语言·学习·golang·map
NQBJT11 小时前
嵌入式从零开始(第十二篇):调试与工具链 —— 从 IDE 到逻辑分析仪
ide·stm32·单片机·嵌入式硬件·c#
U盘失踪了12 小时前
go 常量
开发语言·后端·golang
techdashen12 小时前
Go 的新垃圾回收器 Green Tea:一个降低GC CPU开销的大工程
开发语言·后端·golang
止语Lab12 小时前
Go 错误分层实战:从裸奔到三层防线
开发语言·golang
小魏小魏我们去那里呀14 小时前
Java2Flowchart:一款把 Java 方法一键转换成 Mermaid 流程图的 IntelliJ 插件
java·ide·intellij-idea