博客目录(阅读时间:3分钟)1. 配置golang环境①下载相关软件
②创建gowork工作空间
③配置环境变量
④验证环境配置结果
2. 配置vscode go环境①安装vscode的go插件
②尝试运行
③vscode运行报错情况
④vscode go配置
3. 其他可能遇到的问题
1. 配置golang环境
①下载相关软件
go1.15 https://golang.org/dl/
vscode https://code.visualstudio.com/
②创建gowork工作空间
按照https://go-zh.org/doc/code.html所说
创建gowork文件夹,并创建src、bin和pkg三个子文件夹。
Go代码必须放在工作空间内。它其实就是一个目录,其中包含三个子目录:
src 目录包含Go的源文件,它们被组织成包(每个目录都对应一个包),
pkg 目录包含包对象,
bin 目录包含可执行命令。
③配置环境变量
a.GOPATH
b.PATH下添加go安装目录的bin文件夹,如C:\go\bin
④验证环境配置结果
2. 配置vscode go环境
①安装vscode的go插件
vscode添加go插件
②尝试运行
这时就可以在gowork/src目录下写一个hello.go:
package main
import "fmt"
func main() {
fmt.Printf("Hello word")
}
此时在命令行输入go run hello.go可以直接运行,但在vscode下还不能运行。
③vscode运行报错情况
用vscode打开gowork/src目录,右下角提示需要安装依赖包
install all后出现以下情况:
Installing github.com/mdempsky/gocode FAILED
Installing github.com/uudashr/gopkgs/v2/cmd/gopkgs FAILED
Installing github.com/ramya-rao-a/go-outline FAILED
Installing github.com/acroca/go-symbols FAILED
Installing golang.org/x/tools/cmd/guru FAILED
Installing golang.org/x/tools/cmd/gorename FAILED
Installing github.com/cweill/gotests/... FAILED
Installing github.com/fatih/gomodifytags FAILED
Installing github.com/josharian/impl FAILED
Installing github.com/davidrjenni/reftools/cmd/fillstruct FAILED
Installing github.com/haya14busa/goplay/cmd/goplay FAILED
Installing github.com/godoctor/godoctor FAILED
Installing github.com/go-delve/delve/cmd/dlv FAILED
Installing github.com/stamblerre/gocode FAILED
Installing github.com/rogpeppe/godef FAILED
Installing github.com/sqs/goreturns FAILED
Installing golang.org/x/lint/golint FAILED
④vscode go配置
根据https://goproxy.io/zh/的介绍:
如果您使用的 Go 版本是 1.13 及以上 (推荐)
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.io,direct
# 设置不走 proxy 的私有仓库,多个用逗号相隔(可选)
go env -w GOPRIVATE=*.corp.example.com
# 设置不走 proxy 的私有组织(可选)
go env -w GOPRIVATE=example.com/org_name
命令行输入:
重新打开Vscode -> install all,配置成功。
3. 其他可能遇到的问题
vscode使用F5进行调试时,遇到 go:cannot find main module 的问题
在launch.json下进行如下配置,再运行调试即可:
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Launch",
"type": "go",
"request": "launch",
"mode": "auto",
"remotePath":"",
"host": "127.0.0.1",
"program": "${fileDirname}",
"env": {
"GO111MODULE": "off"
},
"args": [],
"showLog": false,
}
]
}