vscode配置go环境

前提是本地配置好了go环境

 

如果想省事,可以直接下载goland,这个是专门用来写golang的,支持的很完美,传送门https://www.jetbrains.com/go/promo/?gclid=EAIaIQobChMIrY7pxbvB6gIVQteWCh1QLw-YEAAYASAAEgI5UfD_BwE

 

如果你想用vscode撸代码,那么你需要做下面的事情

 

1.打开vscode,在应用商店中搜索Go, 安装go插件,如下图

vscode配置go环境

2.打开一个终端

   1)  输入命令 export GO111MODULE=on   ,开启mod 功能

   2) 输入命令 export GOPROXY="https://goproxy.cn,direct"   , 设置代理

   3) 输入命令  export GOPRIVATE="gitlab-team.smzdm.com" ,配置私有仓库

   4)   输入命令 go env 查看 1) 2)中的变量是否已经更改,并找到自己的 GOPATH 备用,这个路径下面可能用到

 

3. 安装其他插件,比如自动提示、自动引包啥的, 这需要你在vscode下,按住alt+shift+P调出搜索框,输入Go, 找到Go:install/Update Tools 这一项(如果提示go.tools.instal not found可以尝试在扩展商店重新), 勾选其下的所有插件,然后点击右侧的确定, 重点是这步要在*buff下进行,如下图

vscode配置go环境

vscode配置go环境

点击确认后,vscode就会自动给你下载安装插件。

 

4. 如果你安装成功了,就直接看第5步,如果安装结果有失败的,就继续看第4步。当你安装失败了出现,全部或者个别Failed了,那说明你还得走一步,手动下载插件。

1) 进入你的GOPATH目录下的src目录下,创建文件目录golang.org\x, 在x文件夹下,执行 git clone https://github.com/golang/tools.git tools ,下载工具包。

vscode配置go环境

 2)工具包下载完毕后,简单的操作是重复第3步,等待vscode自动给你装。 复杂点的话,就是找到你第3步安装失败的插件,进入 你的GOPATH目录下 执行go install xxxx, 比如你的guru安装失败了,那么你就执行  go install golang.org/x/tools/cmd/guru, 

   3)也不是所有的安装包都在tools下,比如golint, 像这种的如果第3步你失败了,那么在第4步,你就得去golang.org\x文件下执行  git clone https://github.com/golang/lint 下载离线包, 让进入GOPATH目录下执行  go install golang.org/x/lint/golint 来安装。

5. 所有插件安装成功后,重复第三步操作会提示 

6.如果你想使用自动补全、自动引包,那么你需要做下配置,alt+shift+P 搜索settings.json, 找到vscode用户的配置文件, 配置好相关的配置项后重启vscode即可,如下是我的配置 vscode配置go环境

{
"go.useCodeSnippetsOnFunctionSuggestWithoutType": true,
"go.autocompleteUnimportedPackages": true, //自动引入包
"go.gocodePackageLookupMode": "go",
"go.gotoSymbol.includeImports": true,
"go.useCodeSnippetsOnFunctionSuggest": true,
"explorer.confirmDelete": false,
"go.formatTool": "goimports", //格式化工具
"go.docsTool": "gogetdoc", //引入三方包相关
"explorer.confirmDragAndDrop": false,
"window.zoomLevel": 0,
"editor.minimap.enabled": false,
}

 

保存后重启vscode

 

7. 重启后,你可以创建一个go文件,试着写一些简单代码来验证自动补全等功能是否可用,自动补全一般都是以点 “  . ” 来触发, 比如代码里打上fmt.  就会给你提示fmt包下的公共方法或变量  ,自动补全功能有时候加载的很慢,你要等待一会才给你提示补全内容,开的项目越多,越慢。

 

有时候当你打开了一个go项目,运行时会报出一堆错误,你可以在项目的下打开一个终端,然后执行命令 go mod tidy, 这个命令会检查当前项目的依赖, 给你下载丢失的依赖或者去除多余的依赖,有时候你的自动补全功能无法使用就是因为你的依赖不全,比如你的zdm项目少了zdm-go-cat啥的,当然,你在引入依赖的时候,你要对某些私有依赖有权限,比如zmd-go-mvc\zdm-go-cat等, 依赖补全也会导致你的项目无法运行起来。。

 

如果插件没有安装成功可以网上搜一下, vscode如何安装go插件,资料很多,也可以来找我。

 

最后,如果可以,最好用goland,  vscode确实很鸡肋