1 go环境配置
1.1 下载go的安装包
# 下载地址
https://golang.google.cn/dl/
![](https://img-blog.csdnimg.cn/img_convert/6dcb4b5f86c4d5cb1266f97874202a03.png)
image-20210716085430669.png
1.2 配置环境变量
# 分别在 .bash_profile 和 .zshrc 文件后面追加go的环境变量配置
# 说明:GOPATH表示go的工程根目录,之后的go程序均写在该目录下
# Go
export GOPATH=/Users/yorick/Documents/study/code/go-project
export GOBIN=$GOPATH/bin
export PATH=$PATH:$GOBIN
# Go END
# 使配置生效
source .bash_profile
source .zshrc
# 检验是否安装成功
go version
# 查看环境变量配置信息
go env
1.3 创建规范的目录结构
说明:
src目录中编写go的源程序,最好遵循如下的包命名规范,github.com表示github地址,yaokuku123为github用户名,在用户名目录中建立多个项目工程
![](https://img-blog.csdnimg.cn/img_convert/2f40646c117ba26b82faf053bed51c60.png)
image-20210716090024516.png
2 GoLand编辑器配置
2.1 下载GoLand编辑器(2020.3.4)
说明:最好下载2020.3.4版本的GoLand,网上说其他版本无法进行debug调试
![](https://img-blog.csdnimg.cn/img_convert/bee054ec6ca87f73b2a20188847c6d68.png)
image-20210716090343248.png
2.2 初始环境配置
- GOROOT配置
![](https://img-blog.csdnimg.cn/img_convert/cdcbad63f7ac175f3c9afed0acd260b2.png)
image-20210716090438297.png
- GOPATH配置
![](https://img-blog.csdnimg.cn/img_convert/6a36dd2cb57bc0b252af855a59d9efd1.png)
image-20210716090508318.png
- 建立go的helloworld项目工程
![](https://img-blog.csdnimg.cn/img_convert/eff10a61999f1dc6546af8f0e68a4002.png)
image-20210716090608726.png
- 创建main方法,在该文件中编写helloworld程序,文件名可以任意
![](https://img-blog.csdnimg.cn/img_convert/6b3307cab14abd972697d8c7af262a24.png)
image-20210716090727475.png
- 编写代码
package main
import "fmt"
func main() {
fmt.Println("hello world!")
}
- 点击运行按钮直接运行即可,打印出hello world 表示成功
![](https://img-blog.csdnimg.cn/img_convert/a7b0d2a58c34df5640cfe10eb1fe3e29.png)
image-20210716090901352.png
3 debugger配置
说明:Mac m1 的环境下,无法正常使用debug功能,需要我们做额外的配置使得可以正常使用debug功能
- 安装delve
# clone delve这个debug工具,并切换分支
git clone git@github.com:go-delve/delve.git # 防止使用http协议下载失败
cd delve
git checkout -b darwin-arm64-lldb
cd cmd/dlv
# 修改默认网站,防止timeout发生
go env -w GOPROXY=https://goproxy.cn
go build
go install # 会将生成的二进制文件放到GOBIN定义的目录下
- 配置GoLand的配置
![](https://img-blog.csdnimg.cn/img_convert/d4152ea745cbfee74e8abc4b585e4499.png)
image-20210716091443730.png
![](https://img-blog.csdnimg.cn/img_convert/c98535b01e8ffc9edb8131b113d93eb2.png)
image-20210716091504064.png
- 编写测试程序
package main
import "fmt"
func main() {
num1 := 10
num2 := 20
result := num1 + num2
fmt.Println(result)
}
- debug 即可,enjoy!
![](https://img-blog.csdnimg.cn/img_convert/03eacfc1a2f1e8de235f78dde83f5dd0.png)
image-20210716091654273.png