前置知识
go语言中有三个指令我们是必须知道的:
go run:go run 编译并直接运行程序,它会产生一个临时文件(但不会生成 .exe 文件),直接在命令行输出程序执行结果,方便用户调试。
go build:go build 用于测试编译包,主要检查是否会有编译错误,如果是一个可执行文件的源码(即是 main 包),就会直接生成一个可执行文件。
go install:go install 的作用有两步:第一步是编译导入的包文件,所有导入的包文件编译完才会编译主程序;第二步是将编译后生成的可执行文件放到 bin 目录下( G O P A T H / b i n ) , 编 译 后 的 包 文 件 放 到 p k g 目 录 下 ( GOPATH/bin),编译后的包文件放到 pkg 目录下( GOPATH/bin),编译后的包文件放到pkg目录下(GOPATH/pkg)。
所以一个go文件要远行我们可以两种方式:
- go run 直接跑
- 先 go build 生成二进制exe(win下), 然后双击运行
调试
所以调试也有两种方式:
1本地:
直接通过IDE实现
2 通过remote
这种情况是对应我们通过 go build的,具体来说是通过delve(https://github.com/go-delve/delve/tree/master/Documentation/installation)
这里具体展开讲原理。
2.1 实现我们要下载delve,再github中按照文档执行即可:
注意这里要将下载的delve项目放到 go的src目录中
mac的方式也在文档中有,同时go版本低于1.16的也有说明
2.2 这时只需要在goland操作了:
先添加一个remote调试配置
这里有两种将exe文件跑起来的方式
当exe跑起来后,我们再在goland中点击调试就🆗了