Golang开发环境搭建 | 青训营笔记

348 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 1 天

如果你入门学习者,只是打算了解一下golang语法,想快速run起Helloworld,建议直接看第三节--基于云的开发环境,初步熟悉之后再来配置本地开发环境。


1. 编程环境

Golang安装官方教程:Download and install - The Go Programming Language (google.cn)

Golang官方下载地址:Downloads - The Go Programming Language (google.cn)

  • windows安装

下载安装:golang.google.cn/dl/go1.20.w…

验证安装结果

$ go version
$ go version go1.20.1 windows/amd64
  • Linux安装

下载安装:golang.google.cn/dl/go1.20.l…

解压压缩包至/usr/local

$ tar -C /usr/local -xzf go1.15.8.linux-amd64.tar.gz

添加/usr/local/go/bin到环境变量

$ $HOME/.profile
$ export PATH=$PATH:/usr/local/go/bin
$ source $HOME/.profile

验证安装结果

$ go version
$ go version go1.15.1 linux/amd64
  • mac安装

下载安装:golang.google.cn/dl/go1.20.d…

验证安装结果

$ go version
$ go version go1.15.1 darwin/amd64

  • Go Module配置

启用 go module,编译时会忽略 GOPATH 和 vendor 文件夹,只根据 go.mod下载依赖

$ go env -w GO111MODULE="on"

设置GOPROXY,通过该代理在国内也可以访问github 以完成包的下载

$ go env -w GOPROXY=https://goproxy.io,direct
或者
$ go env -w GOPROXY=https://goproxy.cn,direct

2. 编程工具

目前笔者主要用的IDE是Jetbrains系,因此推荐使用Goland,笔者用的是windows版

  • 下载安装

下载安装地址:Download GoLand: A Go IDE with extended support for JavaScript, TypeScript, and databases (jetbrains.com)

Goland是付费软件,有30天试用,在校学生可以通过校内内邮箱申请免费的教育许可证,免费激活使用。

  • IDE配置
  1. Goland的设置分为两个层级:IDE层和Project层
  • IDE层:未打开项目时进行配置,配置信息对所有project生效
- Project层:打开项目后进行配置,配置信息只对本project生效 1. GOROOT配置

配置安装goland的bin文件夹的父目录

1. 代码静态检测

使用 GoLand 编写 Go 代码时,可以配合 gofmt + goimports + golangci-lint 在保存时完成对代码的格式化和质量检测。

  • 安装File Watchers插件

该插件一般会默认安装,如没安装需自行安装

image-20230210131803390.png - 配置File Watchers
  1. 启动gofmt

在每次保存代码文件时自动格式化代码

$ 界面操作步骤:File > Settings > Tools >  File Watchers > + > go fmt

若无go fmt,手动配置信息如下:

1. 启动goimports

在每次保存代码时自动添加缺失的和删除未引用的包

$ 界面操作步骤: File > Settings > Tools >  File Watchers > + > goimports

若无goimports,手动配置信息如下:

若GOROOT目录下的bin文件夹中无goimports.exe,则需下载,步骤如下:
$ go install golang.org/x/tools/cmd/goimports
# 会发现gopath下的bin目录中出现了goimports.exe文件# 查看gopath或goroot位置命令
go env# 将goimports.exe文件复制到goroot目录下的bin文件夹中
  1. 启动golangci-lint

开启 golangci-lint可以对代码进行静态检查,比如报告函数行数超标、文件行数超标等来帮助规范代码。

$ 界面操作步骤: File > Settings > Tools >  File Watchers > + > golangci-lint

golangci-lint默认不会安装,需手动下载安装,安装命令如下:

$ go get -u github.com/golangci/golangci-lint/cmd/golangci-lint

关于 golangci-lint 的使用详见其官方文档

  • 关闭 import 折叠

Goland默认会折叠导包部分的代码,每次查看都需手动点开,比较麻烦,可以关闭该设置

$ Editor > General > Code Folding > 去掉勾选 Imports

3. 基于云的开发环境

云平台链接:Dashboard — Gitpod

登陆账号:Github账号

使用介绍:Gitpod是一个在线IDE,可以从任何GitHub页面启动。只需在任何GitHub-URL前加上“https://gitpod.io#” ,支持多种语言编程

Golang示例代码:Dashboard — Gitpod