vscode调试Go语言(简明教程)
Posted 王张飞
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vscode调试Go语言(简明教程)相关的知识,希望对你有一定的参考价值。
1、Go的安装
Go最新版安装包的下载(Go官网):https://studygolang.com/dl
Windows
和MacOS
的安装比较简单,双击打开安装包,一直点击next
就可以安装成功。
Linux
下的安装,将下载的Linux
安装包中的go
文件夹,解压到/usr/local
路径即可。
在控制台输入go version
,如果显示了版本号,即代表安装成功。
2、Go环境变量的配置
安装成功后,必须要配置环境变量。
(1) windows环境变量的配置:
windows
环境下,go
安装包安装成功后,会自动将go
添加到path
目录下,所以不需要再向Path
环境变量中添加go
GOROOT
设置:Go
安装路径
“我的电脑”=》“属性”=》“高级系统设置”=》“环境变量”=》“系统环境变量”,新增GOROOT
环境变量,如下图
GOPATH设置:
删除用户变量中的GOPATH
设置,这个是go
安装包默认添加的工作目录,一般不使用。
新建Go
工作环境目录Go_Works
,并在此目录下创建src
,pkg
,bin
三个子目录。
新增GOPATH
环境变量指向Go
工作环境目录Go_Works
,如下图
(2) 打开GoMOD,配置代理
在这里感谢「七牛云」为我们中国区的Golang开发者提供的代理服务
打开cmd命令窗,分别运行:
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
OK! 完成上述两步,我们打开vscode
,插件都可以直接在vscode
中直接下载了
(3) 在VSCode中安装Go插件
进入Extensions
后直接搜索go
,即可安装
(4) 创建文件
在$GOPATH/src
目录下,创建hello/hello.go
文件,使用vscode
打开。
注意:$GOPATH
是我们刚刚配置的环境变量。比如上面配置的环境变量位置为D:\\Program Files\\Go_Works
,即$GOPATH
就是指D:\\Program Files\\Go_Works
这个路径。
举例:那么$GOPATH/src
就是指D:\\Program Files\\Go_Works/src
目录
在安装了Go
插件后的vscode
,现在打开go
文件后,会自动安装我们自己的必要的环境依赖
(5) Go Modules的使用
Go mod
是官方强推,为了替代GOPATH
而诞生的一个Go
语言依赖库管理器。之前所有的包都丢在GOPATH
中,而Go mod
最大的好处就是我们依赖的包可以指定版本。而且所有程序依赖的包,只会存在同一份。不会像npm
那样,同一个包还能有n多个存在。这样我们的电脑就很省空间了
常用命令为
go mod tidy
通俗来说就是将当前的库源码文件所依赖的包,全部安装并记录下来,多的包就删掉,少了的就自动补上
(6) 实例操作
进入我们的hello
文件夹,并且执行go mod init
即可
cd $GOPATH/src/hello
go mod init
当前文件夹下生成了go.mod
文件和go.sum
文件
go.mod
文件是记录我们依赖库以及版本号
此时我们这个hello
项目,就采用了go mod
进行库依赖管理,以后编写完代码后执行go mod tidy
即可,这个命令会自动下载依赖的库,也会删除多余的库
更多的使用方式可以执行go help mod
进行查看
vscode
的launch.json
配置以及setting.json
配置
首先是launch.json
的Debug
配置内容
{
"version": "0.2.0",
"configurations": [{
"name": "LaunchGo",
"type": "go",
"request": "launch",
"mode": "auto",
"program": "${fileDirname}",
"env": {
// xxx.go脚本的路径为E:/Study_self/go_lesson/src/hello/xxx.go
// 修改"GOPATH": "E:/Study_self/go_lesson",
// 在xxx.go脚本目录下运行go mod init hello
"GOPATH": "D:/Program Files/Go_Works",
"GOROOT": "D:/Program Files/Go"
},
"args": [],
//"showLog": true
}
]
}
以下是setting.json
的最新配置,因为我这个配置同时存在了一些别的组件,比如golangci-lint
这种go语言风格包以及别的组件,所以复制到你们的vscode
中时,有些配置会出现红色异常
将出现红色异常的地方直接删除或者注释即可。之所以保留给你们,是觉得你们可能有些人也会安装相关插件使用
{
"editor.wordWrap": "on",
// 如果useLanguageServer设为true,那么在编写代码时引入本地没有的package时,会自动下载安装
// 就是有时候会非常卡,保存go的编码文件时偶尔会卡死。这点你们自己取舍吧
"go.useLanguageServer": false,
"editor.minimap.renderCharacters": false,
"editor.minimap.enabled": false,
"terminal.external.osxExec": "iTerm.app",
"go.docsTool": "gogetdoc",
"go.testFlags": ["-v","-count=1"],
"go.buildTags": "",
"go.buildFlags": [],
"go.lintFlags": [],
"go.vetFlags": [],
"go.coverOnSave": false,
"go.useCodeSnippetsOnFunctionSuggest": false,
"go.formatTool": "goreturns",
"go.gocodeAutoBuild": false,
"go.goroot": "D:/Program Files/Go",
"go.gopath": "D:/Program Files/Go_Works",
"go.autocompleteUnimportedPackages": true,
"go.formatOnSave": true,
"window.zoomLevel": 0,
"debug.console.fontSize": 16,
"debug.console.lineHeight": 30,
}
致谢:https://www.jb51.net/article/186294.htm
以上是关于vscode调试Go语言(简明教程)的主要内容,如果未能解决你的问题,请参考以下文章
CentOS VSCode调试go语言出现:exec: "gcc": executable file not found in PATH
VSCode调试go语言出现:exec: "gcc": executable file not found in %PATH%