文章首发自公众号:Go编程时光
《Go编程时光》,一个能带你学习 Go 语言的专栏,同时欢迎搜索我的同名公众号【Go编程时光】(排版精美更适合阅读),第一时间获取Go语言干货。
1. 下载安装 Go语言
下载地址:https://golang.google.cn/dl/
下载完成后,直接双击 msi 文件进行安装,我习惯将软件安装在我的 E 盘下的 Program Files
目录下
后面就是一路点击 Next
即可,直到出现如下界面,安装完成。
2. 配置 Goland 环境
学习编程语言,使用一个称心的 IDE,可以帮你省去很多麻烦。
开发 Python 项目,我习惯使用 PyCharm,因为已经习惯了 JetBrains 风格的IDE,可以替我省去很多熟悉新IDE的成本,所以这里我照样使用 JetBrains 专门为 Go语言开发的IDE:Goland
。
Goland 下载地址:https://download.jetbrains.com/go/goland-2019.2.3.exe
双击下载下来的 exe 文件,除了选择安装路径,我惯例更换成 E 盘之外,一路选择 Next
, 直到如下界面,根据你的需要全选中(推荐全选)
接着一路 Next
,直到出现如下界面,安装完成,选择 Run Gogland
立即运行。
此时如果你若没有购买 JetBrains 的激活码,此时是无法使用 Goland 的。
为了让我们的学习更加顺畅,这里会教大家使用 破解的方式获得 Goland 的使用权。
首先下载相关的破解补丁:http://c.biancheng.net/uploads/course/go/Goland_Crack_Sinicization.zip
下载的 zip 包里包含三个文件
- jetbrains-agent.jar:破解补丁
- resources_cn.jar:汉化补丁
- 激活码.txt:激活码
将 jetbrains-agent.jar 拷贝到 你的 Goland 安装目录的bin文件夹下,我的路径是:E:\Program Files\JetBrains\GoLand 2019.2.3\bin
然后用编辑器打开这两个文件
在最后一行添加如下一行,你要根据自己路径对应修改后面的值
-javaagent:E:\Program Files\JetBrains\GoLand 2019.2.3\bin\jetbrains-agent.jar
接着打开回到你的 Goland 启动界面,点击 Activation code
,复制 激活码.txt
中的激活码,填入再点击 OK
此时你的 Goland 已经可以正常使用了,创建我的项目目录,顺便设置好 GOROOT 。
创建好Project后,再点击 Files->Settings->GOPATH,添加我们的项目目录F:\Go-Player
随便点击一个go文件,就能在下图箭头处看到配置入口,点击进入配置一下 Go运行器。
按照如下指示进行配置。
去掉参数提示
设置 goproxy
设置 goimports(自动格式化插件),如果 你之前 没有安装 ,会提示你点击 yes
下载安装 。
至此,环境配置完成。
在项目根目录下,创建如下三个文件夹,并在 src 目录下创建一个hello.go 的文件。
点击运行按钮,在控制台我们看到了熟悉的 Hello, World!
3. 配置 VS Code 环境
提前设置用户级的环境变量
GOPATH = F:\Go-Player
PATH = %GOPATH%\bin # 以追加的方式
昨天评论区有人问,GOPATH 和 GOROOT 是什么?为什么需要设置?回想一下 你学 Python 的话,安装 Python 解释器的时候,是不是也要设置环境变量?这里也是类似。
GOROOT :在GO语言中表示的是 Go语言编译、工具、标准库等的安装路径,通过它可以告诉系统你的 go.exe 是放在哪里,不设置的话,你后面执行 go get
、go install
的时候,系统就不认识它了。
而 GOPATH环境变量则表示 Go的工作目录,这个目录指定了需要从哪个地方寻找GO的包、可执行程序等,这个目录可以是多个目录表示。这里我设置成我的工作空间(目录你可以自己定) :F:\Go-Player
,如果不设置的话 ,默认是在你的用户目录下的 go 文件夹。
这时要再说一点,GO 项目中,一般来说它的工作目录结构是这样的:
bin目录:包含了可执行程序,注意是可执行的,不需要解释执行。
pkg目录:包含了使用的包或者说库。
src目录:里面包含了go的代码源文件,其中仍按包的不同进行组织。
所以后面我的创建的GO工作目录,也是按照这个标准来,先说明一下。
接下来,要开始配置 VS Code 环境。
打开你的 VS Code软件,先确认你设置的环境变量已经生效,点击 Terminal
-> New Terminal
,使用 cmd 命令查看环境变量。
如上图所求,我的环境变量是OK的,如果你的输出是指向你的用户目录:%USERPROFILE%\go
建议你不要折腾(因为我无论重启多少次 VS Code,其记录的GOPATH始终指向%USERPROFILE%\go), 直接重启你的电脑。
好了之后,我们要从 github 上下载两个仓库,之所以要手动下载,是因为有墙的存在,在线安装的话,很多插件你会下载失败。
创建目录 src/goland.org/x/
,并进入此目录,执行命令
$ git clone https://github.com/golang/tools.git
$ git clone https://github.com/golang/lint.git
点击 File
- Open Folder
安装两个插件:
第一个是:Go 语言的扩展插件
第二个是:Code Runner,让你的 VS Code 能够编译运行 Go 的程序。
随便点开一个 go 文件,在你的右下角会提示要你安装一些工具,安装的包有些由于墙的原因,无法下载,为了保证下载顺利,可以设置一下代理。
$ go env -w GOPROXY=https://goproxy.cn,direct
然后再点击 Install All
然后你在 OUTPUT 就能看到安装进度
安装的 exe 文件会放在 %GOPATH%/bin 下,也就是 F:\Go-Player\bin
而此的 src 目录结构是这样的
到这时环境配置完成,编写 HelloWorld,并运行查看输出,一切完成。
4. 配置环境变量
当你在终端使用 go env
的时候,会打印出go 相关的所有环境变量
$ go env
set GO111MODULE=
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\wangbm\AppData\Local\go-build
set GOENV=C:\Users\wangbm\AppData\Roaming\go\env
set GOEXE=.exe
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=E:\MING-Code\GoPlayer
set GOPRIVATE=
set GOPROXY=https://goproxy.cn,direct
set GOROOT=D:\Program Files (x86)\Go-1.13.6
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLDIR=D:\Program Files (x86)\Go-1.13.6\pkg\tool\windows_amd64
set GCCGO=gccgo
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
想查看几个特定的环境变量就加在 go env
后面
$ go env GOPATH
E:\MING-Code\GoPlayer
$ go env GOROOT
D:\Program Files (x86)\Go-1.13.6
$ go env GOPROXY
https://goproxy.cn,direct
以上环境变量很多,这里仅设置下面这两个就足够了
- 一个是GO111MODULE 设置为 on,表示使用 go modules 模式
$ go env -w GO111MODULE=on
- 一个是开启代理,防止下载包失败(前面可能你已经设置过)
$ go env -w GOPROXY=https://goproxy.cn,direct