在 vscode 中 go 编码发生的问题整理
![在vscode中go编码发生的问题整理](https://static001.geekbang.org/infoq/b6/b6ecf1ad4d2aebe0aa6403511288ccc3.jpeg)
引言
使用 VsCode 进行 Go 程序开发,我们肯定会碰到一些问题,这些问题有些是 IDE 的配置问题,有些是下载包的版本不一致问题,本文主要针对在开发过程中碰到的问题做一个简单的回顾和整理。
前期准备,必看
在进行问题纠错前,先确保自己正确下载了 golang 的官方工具集go-tool
,如果不确定,就跟着我的步骤操作一遍,可能操作后,你的问题就解决了。
1、配置 golang 的源。
然后我们进行 golang 工具的默认工具服务下载:
2、Windows 平台按下Ctrl+Shift+P
,Mac 平台按Command+Shift+P
,这个时候 VS Code 界面会弹出一个输入框
![](https://static001.geekbang.org/infoq/06/0630aa1de4cac0177d947d346f54303a.png)
3、我们在这个输入框中输入>go:install
,下面会自动搜索相关命令,我们选择Go:Install/Update Tools
这个命令,按下图选中并会回车执行该命令
在弹出的窗口选中所有,并点击“确定”按钮,进行安装。
![](https://static001.geekbang.org/infoq/c3/c3d808d00e1f5f4d0927e99771988b53.png)
等待安装完成,因为国内网络的特殊性,所以一定要谁知好 go 的代理源,不然总是下载失败。
执行这一步之后,重启 Vscode,如果这个时候能够解决你的问题,那就不需要再往下看了。
具体问题解决方案
如果以上步骤不能解决你的问题,那就可以对应自己的问题来进行操作设置了。
一、VSCode 中 F12 无法跳转
通用设置
点击左下角点击齿轮,选择设置界面(也可以直接快捷键CTRL+,
点击用户-扩展-go。进行如下设置
1、DocsTool 修改成 godoc
![](https://static001.geekbang.org/infoq/7c/7ce95babe00fa3e839bcc16b5a451664.png)
2、Use Language Server 去掉勾选
![](https://static001.geekbang.org/infoq/42/420e5ca8874eed699551d2f2a81e48c1.png)
3、重启 VsCode
go mod 模式
如果进行上述操作后还是不行,并且你是使用的 go mod 模式,那还有一种比较特殊的方式可以解决这个问题。
执行命令go mod vendor
导入依赖,这一步会将依赖转移至该项目根目录下的 vendor(自动新建) 文件夹下
此时 F12 就可以进行代码跳转了。
二、代码自动带出功能失效
这个问题一般都是因为 go mod
模式的切换导致的。如果你的项目是使用的 Gopath 模式(如果有同学对 Gopath 和 Gomod 这俩种模式不了解的,可以看看我的文章如何看待 go moudle 并应用于工作),那么你需要设置
这时候自动带出功能就可能正确使用了
如果你使用的是go mod
模式,设置
自动带出功能也可以恢复正常。
文章参考
关于我
最后
本文到此结束,希望对你有帮助 😃
如果还有什么疑问或者建议,可以多多交流,原创文章,文笔有限,才疏学浅,文中若有不正之处,万望告知。
更多精彩技术文章汇总在我的 公众号【程序员工具集]】,持续更新,欢迎关注订阅收藏。
版权声明: 本文为 InfoQ 作者【happlyfox】的原创文章。
原文链接:【http://xie.infoq.cn/article/30ca5a33ac1d6a380cba01845】。文章转载请联系作者。
评论