共計(jì) 3663 個(gè)字符,預(yù)計(jì)需要花費(fèi) 10 分鐘才能閱讀完成。
這篇文章主要講解了“Go 語(yǔ)言環(huán)境的搭建方法”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著丸趣 TV 小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“Go 語(yǔ)言環(huán)境的搭建方法”吧!
安裝 Go 語(yǔ)言及搭建 Go 語(yǔ)言開(kāi)發(fā)環(huán)境下載下載地址
Go 官網(wǎng)下載地址:https://golang.org/dl/
Go 官方鏡像站(推薦):https://golang.google.cn/dl/
版本的選擇
Windows 平臺(tái)和 Mac 平臺(tái)推薦下載可執(zhí)行文件版,Linux 平臺(tái)下載壓縮文件版。
安裝 Windows 安裝
此安裝實(shí)例以 64 位 Win10 系統(tǒng)安裝 Go1.11.5 可執(zhí)行文件版本為例。
將上一步選好的安裝包下載到本地。
雙擊下載好的文件
Linux 下安裝
我們?cè)诎姹具x擇頁(yè)面選擇并下載好 go1.11.5.linux-amd64.tar.gz 文件:
wget https://dl.google.com/go/go1.11.5.linux-amd64.tar.gz
將下載好的文件解壓到 /usr/local 目錄下:
mkdir -p /usr/local/go # 創(chuàng)建目錄 tar -C /usr/lcoal/go zxvf go1.11.5.linux-amd64.tar.gz. # 解壓
如果提示沒(méi)有權(quán)限,加上 sudo 以 root 用戶(hù)的身份再運(yùn)行。執(zhí)行完就可以在 /usr/local/ 下看到 go 目錄了。
配置環(huán)境變量:Linux 下有兩個(gè)文件可以配置環(huán)境變量,其中 /etc/profile 是對(duì)所有用戶(hù)生效的;$HOME/.profile 是對(duì)當(dāng)前用戶(hù)生效的,根據(jù)自己的情況自行選擇一個(gè)文件打開(kāi),添加如下兩行代碼,保存退出。
export GOROOT=/usr/local/go export PATH=$PATH:$GOROOT/bin
修改 /etc/profile 后要重啟生效,修改 $HOME/.profile 后使用 source 命令加載 $HOME/.profile 文件即可生效。檢查:
~ go versiongo version go1.11.5 linux/amd64
Mac 下安裝
下載可執(zhí)行文件版,直接點(diǎn)擊下一步安裝即可,默認(rèn)會(huì)將 go 安裝到 /usr/local/go 目錄下。
檢查
上一步安裝過(guò)程執(zhí)行完畢后,可以打開(kāi)終端窗口,輸入 go version 命令,查看安裝的 Go 版本。
配置 GOPATH
GOPATH 是一個(gè)環(huán)境變量,用來(lái)表明你寫(xiě)的 go 項(xiàng)目的存放路徑(工作目錄)。
GOPATH 路徑最好只設(shè)置一個(gè),所有的項(xiàng)目代碼都放到 GOPATH 的 src 目錄下。
Linux 和 Mac 平臺(tái)就參照上面配置環(huán)境變量的方式將自己的工作目錄添加到環(huán)境變量中即可。Windows 平臺(tái)按下面的步驟將 D:\code\go 添加到環(huán)境變量:
在 Go 1.8 版本之前,GOPATH 環(huán)境變量默認(rèn)是空的。從 Go 1.8 版本開(kāi)始,Go 開(kāi)發(fā)包在安裝完成后會(huì)為 GOPATH 設(shè)置一個(gè)默認(rèn)目錄,參見(jiàn)下表。
GOPATH 在不同操作系統(tǒng)平臺(tái)上的默認(rèn)值
平臺(tái) GOPATH 默認(rèn)值舉例 Windows%USERPROFILE%/goC:\Users\ 用戶(hù)名 \goUnix$HOME/go/home/ 用戶(hù)名 /go
同時(shí),我們將 GOROOT 下的 bin 目錄及 GOPATH 下的 bin 目錄都添加到環(huán)境變量中。
Go 項(xiàng)目結(jié)構(gòu)
在進(jìn)行 Go 語(yǔ)言開(kāi)發(fā)的時(shí)候,我們的代碼總是會(huì)保存在 $GOPATH/src 目錄下。在工程經(jīng)過(guò) go build、go install 或 go get 等指令后,會(huì)將下載的第三方包源代碼文件放在 $GOPATH/src 目錄下,產(chǎn)生的二進(jìn)制可執(zhí)行文件放在 $GOPATH/bin 目錄下,生成的中間緩存文件會(huì)被保存在 $GOPATH/pkg 下。
如果我們使用版本管理工具(Version Control System,VCS。常用如 Git)來(lái)管理我們的項(xiàng)目代碼時(shí),我們只需要添加 $GOPATH/src 目錄的源代碼即可。bin 和 pkg 目錄的內(nèi)容無(wú)需版本控制。
適合個(gè)人開(kāi)發(fā)者
我們知道源代碼都是存放在 GOPATH 的 src 目錄下,那我們可以按照下圖來(lái)組織我們的代碼。
目前流行的項(xiàng)目結(jié)構(gòu)
Go 語(yǔ)言中也是通過(guò)包來(lái)組織代碼文件,我們可以引用別人的包也可以發(fā)布自己的包,但是為了防止不同包的項(xiàng)目名沖突,我們通常使用頂級(jí)域名來(lái)作為包名的前綴,這樣就不擔(dān)心項(xiàng)目名沖突的問(wèn)題了。
因?yàn)椴皇敲總€(gè)個(gè)人開(kāi)發(fā)者都擁有自己的頂級(jí)域名,所以目前流行的方式是使用個(gè)人的 github 用戶(hù)名來(lái)區(qū)分不同的包。
舉個(gè)例子:張三和李四都有一個(gè)名叫 studygo 的項(xiàng)目,那么這兩個(gè)包的路徑就會(huì)是:
import github.com/zhangsan/studygo
和
import github.com/lisi/studygo
以后我們從 github 上下載別人包的時(shí)候,如:
go get github.com/jmoiron/sqlx
那么,這個(gè)包會(huì)下載到我們本地 GOPATH 目錄下的 src/github.com/jmoiron/sqlx。
適合企業(yè)開(kāi)發(fā)者 Go 開(kāi)發(fā)編輯器
Go 采用的是 UTF- 8 編碼的文本文件存放源代碼,理論上使用任何一款文本編輯器都可以做 Go 語(yǔ)言開(kāi)發(fā),這里推薦使用 VS Code 和 Goland。VS Code 是微軟開(kāi)源的編輯器,而 Goland 是 jetbrains 出品的付費(fèi) IDE。
我們這里使用 VS Code 加插件做為 go 語(yǔ)言的開(kāi)發(fā)工具。
VS Code 介紹
VS Code 全稱(chēng) Visual Studio Code,是微軟公司開(kāi)源的一款免費(fèi)現(xiàn)代化輕量級(jí)代碼編輯器,支持幾乎所有主流的開(kāi)發(fā)語(yǔ)言的語(yǔ)法高亮、智能代碼補(bǔ)全、自定義熱鍵、括號(hào)匹配、代碼片段、代碼對(duì)比 Diff、GIT 等特性,支持插件擴(kuò)展,支持 Win、Mac 以及 Linux 平臺(tái)。
雖然不如某些 IDE 功能強(qiáng)大,但是它添加 Go 擴(kuò)展插件后已經(jīng)足夠勝任我們?nèi)粘5?Go 開(kāi)發(fā)。
下載與安裝
VS Code 官方下載地址:https://code.visualstudio.com/Download
三大主流平臺(tái)都支持,請(qǐng)根據(jù)自己的電腦平臺(tái)選擇對(duì)應(yīng)的安裝包。
第一個(gè) Go 程序 Hello World
現(xiàn)在我們來(lái)創(chuàng)建第一個(gè) Go 項(xiàng)目——hello。在我們的 GOPATH 下的 src 目錄中創(chuàng)建 hello 目錄。
在該目錄中創(chuàng)建一個(gè) main.go 文件:
1 package main // 聲明 main 包,表明當(dāng)前是一個(gè)可執(zhí)行程序 2 3 import fmt // 導(dǎo)入內(nèi)置 fmt 包 4 5 func main(){ // main 函數(shù),是程序執(zhí)行的入口 6 fmt.Println( Hello World!) // 在終端打印 Hello World! 7 }
go build
go build 表示將源代碼編譯成可執(zhí)行文件。
在 hello 目錄下執(zhí)行:
go build
或者在其他目錄執(zhí)行以下命令:
go build hello
go 編譯器會(huì)去 GOPATH 的 src 目錄下查找你要編譯的 hello 項(xiàng)目
編譯得到的可執(zhí)行文件會(huì)保存在執(zhí)行編譯命令的當(dāng)前目錄下,如果是 windows 平臺(tái)會(huì)在當(dāng)前目錄下找到 hello.exe 可執(zhí)行文件。
可在終端直接執(zhí)行該 hello.exe 文件:
d:\code\go\src\hello hello.exeHello World!
我們還可以使用 - o 參數(shù)來(lái)指定編譯后可執(zhí)行文件的名字。
go build -o heiheihei.exe
go install
go install 表示安裝的意思,它先編譯源代碼得到可執(zhí)行文件,然后將可執(zhí)行文件移動(dòng)到 GOPATH 的 bin 目錄下。因?yàn)槲覀兊沫h(huán)境變量中配置了 GOPATH 下的 bin 目錄,所以我們就可以在任意地方直接執(zhí)行可執(zhí)行文件了。
跨平臺(tái)編譯
默認(rèn)我們 go build 的可執(zhí)行文件都是當(dāng)前操作系統(tǒng)可執(zhí)行的文件,如果我想在 windows 下編譯一個(gè) linux 下可執(zhí)行文件,那需要怎么做呢?
只需要指定目標(biāo)操作系統(tǒng)的平臺(tái)和處理器架構(gòu)即可:
SET CGO_ENABLED=0 // 禁用 CGO SET GOOS=linux // 目標(biāo)平臺(tái)是 linux SET GOARCH=amd64 // 目標(biāo)處理器架構(gòu)是 amd64
然后再執(zhí)行 go build 命令,得到的就是能夠在 Linux 平臺(tái)運(yùn)行的可執(zhí)行文件了。
Mac 下編譯 Linux 和 Windows 平臺(tái) 64 位 可執(zhí)行程序:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go buildCGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build
Linux 下編譯 Mac 和 Windows 平臺(tái) 64 位可執(zhí)行程序:
CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go buildCGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build
Windows 下編譯 Mac 平臺(tái) 64 位可執(zhí)行程序:
SET CGO_ENABLED=0 SET GOOS=darwinSET GOARCH=amd64go build
感謝各位的閱讀,以上就是“Go 語(yǔ)言環(huán)境的搭建方法”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì) Go 語(yǔ)言環(huán)境的搭建方法這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是丸趣 TV,丸趣 TV 小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!