「2022 版」輕松搞定 Go 開發(fā)環(huán)境
閱讀本文大概需要 6?分鐘。
大家好,我是 polarisxu。
實話說,這個時候還寫這么基礎(chǔ)的文章,感覺有點太 low?但幾乎每天有人開始學習 Go,那自然繞不開搭建 Go 開發(fā)環(huán)境。很多人會通過搜索網(wǎng)上的教程來照著做,于是發(fā)現(xiàn)搞不定,原因是找到的教程大部分比較老舊,都是基于 GOPATH 的。隔段時間我就會看到有人問類似的問題,所以才決定寫一篇 2022 版 Go 開發(fā)環(huán)境搭建。
提醒一句,入門教程涉及到代碼放入 src 目錄下的,基本是基于 GOPATH 的教程,請忽略。
1、安裝 Go
Go 語言支持多平臺,因此需要根據(jù)你的平臺來下載對應的 Go 安裝包。本文以當前最新的版本(1.17.6)為例,以 Mac 系統(tǒng)為主講解。
常規(guī)安裝
到 https://studygolang.com/dl 下載對應的安裝包。

如果你是 M1 之后的 Mac,下載 go1.17.6.darwin-arm64.pkg,否則下載 go1.17.6.darwin-amd64.pkg。之后雙擊下載的安裝包,按提示一步步操作即可。
Windows 安裝方式類似,一步步操作即可。
Linux 下,需要解壓壓縮包,然后將解壓后的文件夾移動到 /usr/local/ 目錄下。
默認情況下,經(jīng)過以上操作,Go 安裝在了 /usr/local/go 中,可以通過以下命令驗證是否安裝成功:
$?/usr/local/go/bin/go?version
go?version?go1.17.6?darwin/amd64
如果能正常輸出版本信息,表示安裝成功了。
你發(fā)現(xiàn)沒?我沒有配置任何環(huán)境變量。實際上,Go 默認已經(jīng)不需要配置任何環(huán)境變量了——什么 GOROOT、GOPATH 等都不需要了。
但有一個環(huán)境變量需要配置下,那就是 PATH,否則每次都需要指定 /usr/local/go/bin/go 這么長的路徑。
打開 ~/.bash_profile,在文末加上以下內(nèi)容:
export?PATH=$PATH:/usr/local/go/bin
然后執(zhí)行:
$?source??~/.bash_profile
這時在終端直接輸入 go verison:
$?go?version
go?version?go1.17.6?darwin/amd64
這就是 PATH 環(huán)境變量的作用。
Linux 下配置和 Mac 類似。
Windows 下請查閱配置 PATH 環(huán)境變量的方法。
不過,國內(nèi)特殊的環(huán)境,我們還需要做一個重要的配置,那就是 GOPROXY:
$?go?env?-w?GOPROXY=https://goproxy.cn,https://goproxy.io,direct
這樣可以方便地下載 golang.org/x 等包,所以,記得執(zhí)行以上命令。
其他安裝方法
以上是常規(guī)的安裝方法,你也可以通過源碼編譯安裝。不過,我更喜歡通過第三方工具管理 Go,因為可以方便地切換多版本。
具體可以參考我之前寫的文章:《終于找到了一款我喜歡的安裝和管理 Go 版本的工具》。
2、使用 GoLand
這是大名鼎鼎的 JB 專門為 Go 語言定制的 IDE,很強大,目前最新穩(wěn)定版本是 2021.3。
到 https://www.jetbrains.com/zh-cn/go/ 下載 goland-2021.3.3(2022.1.28 日構(gòu)建 213.6777.51),之后雙擊安裝。打開后看到如下界面:(GoLand 是付費軟件,不過可以試用 30 天)

可以看到,GoLand 支持遠程開發(fā)了,在打開/創(chuàng)建項目之前,可以做一些基本的配置,包括學習 GoLand、安裝插件等。如果你不喜歡英文界面,在 Plugins 中可以找到中文界面插件,安裝即可(GoLand 現(xiàn)在已經(jīng)支持本地化,在你打開一個項目時,右下角會有提示,要不要切換到本地語言環(huán)境,即不需要手動安裝語言包)。(我比較建議直接使用英文版)
我們點擊 New Project,創(chuàng)建一個新項目:

一定要選擇第一項,而不是 Go(GOPATH),Location 可以選擇你喜歡的位置,GOROOT 就是你 Go 安裝的位置,GoLand 會自動檢測到。
創(chuàng)建后,會創(chuàng)建好項目,里面會有一個 go.mod 文件。這是 Go Module 的依賴管理文件。創(chuàng)建一個文件 main.go,輸入以下內(nèi)容:
package?main
import?"fmt"
func?main()?{
?fmt.Println("Hello,?2022.?I?am?PolarisXu!")
}
GoLand 默認會自動保存。然后點擊運行按鈕運行:

還可以 Debug。
對于已經(jīng)存在的項目,如果發(fā)現(xiàn)代碼提示、依賴等有問題,打開 GoLand 的「Preferences」,確認有無勾選 Module:

GoLand 是開箱即用的,幾乎不需要任何配置就可以愉快地玩耍。
3、使用 VSCode
如果你更喜歡輕量級的文本編輯器,VSCode 會是一個不錯的選擇。之前我寫過一系列關(guān)于 VSCode 的文章,涉及到關(guān)于 VSCode 進行 Go 開發(fā)的內(nèi)容,其中關(guān)于 Go 開發(fā)環(huán)境的配置,主要看這篇:《VSCode 開發(fā) Go 程序也可以和 GoLand 一樣強大》。這里就不重復了。
4、總結(jié)
總結(jié)一下,如下幾個關(guān)鍵步驟:
下載安裝 Go 配置 PATH 環(huán)境變量 配置 GOPROXY 選擇 GoLand 或 VSCode 或其他你喜歡的開發(fā)工具
Enjoy Coding with Go!
我是 polarisxu,北大碩士畢業(yè),曾在 360 等知名互聯(lián)網(wǎng)公司工作,10多年技術(shù)研發(fā)與架構(gòu)經(jīng)驗!2012 年接觸 Go 語言并創(chuàng)建了 Go 語言中文網(wǎng)!著有《Go語言編程之旅》、開源圖書《Go語言標準庫》等。
堅持輸出技術(shù)(包括 Go、Rust 等技術(shù))、職場心得和創(chuàng)業(yè)感悟!歡迎關(guān)注「polarisxu」一起成長!也歡迎加我微信好友交流:gopherstudio
