Golang環(huán)境搭建及打包和工具鏈詳解
一、環(huán)境搭建
從https://golang.google.cn/dl/下載安裝即可
新建GO_HOME 系統(tǒng)環(huán)境變量,指向go的安裝目錄
在終端輸入go dev即可測(cè)試有無(wú)安裝成功
二、包
所有Go程序的程序都會(huì)組織成若干組文件,每組文件被稱為一個(gè)包。每個(gè)包的代碼都可以作為很小的復(fù)用單元,被其他項(xiàng)目引用。
①所有的go文件都應(yīng)在第一行聲明自己所屬的包。每個(gè)包都在一個(gè)單獨(dú)的目錄里。這意味著同一個(gè)目錄下的所有.go文件都必須聲明同一個(gè)包名。
②給包命名時(shí)都應(yīng)該使用簡(jiǎn)潔、清晰且全小寫的名字。
③main包具有特殊意義。Golang的編譯程序會(huì)試圖把這種名字的包編譯為二進(jìn)制可執(zhí)行文件。所有的Golang編譯的可執(zhí)行程序都必須有一個(gè)名叫main的包。
執(zhí)行下面這段代碼
package main import "fmt" func main() { fmt.Println("Hello World!") }
在該代碼目錄下執(zhí)行g(shù)o build 文件名??梢钥吹缴闪丝蓤?zhí)行文件。
三、導(dǎo)入
對(duì)于import導(dǎo)入的內(nèi)容
①標(biāo)準(zhǔn)庫(kù)中的包會(huì)在安裝Go的位置找到,開發(fā)者創(chuàng)建的包會(huì)在GOPATH環(huán)境變量指定的目錄里查找。還可以導(dǎo)入遠(yuǎn)程路徑比如github上的包
②導(dǎo)入一個(gè)不在代碼中使用的包會(huì)導(dǎo)致編譯失敗,可以在前面加下劃線進(jìn)行標(biāo)注。
四、init函數(shù)
每個(gè)包可以包含任意多的init函數(shù),這些函數(shù)都會(huì)在程序執(zhí)行開始時(shí)調(diào)用,在main之前調(diào)用
五、一些常用go命令
①go build hello.go
編譯生成可執(zhí)行文件
②go clean hello.go
刪除編譯生成的可執(zhí)行文件
③go run hello.go
先編譯后執(zhí)行
④go vet hello.go
捕獲一些常見錯(cuò)誤
⑤go fmt
代碼格式化
⑥go doc
在終端打開一個(gè)文檔
⑦godoc -http=:6060
在端口啟動(dòng)一個(gè)web服務(wù)器,可以使用http://localhost:6060打開
到此這篇關(guān)于Golang環(huán)境搭建及打包和工具鏈的文章就介紹到這了,更多相關(guān)go打包和工具鏈內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
解決Golang中ResponseWriter的一個(gè)坑
這篇文章主要介紹了解決Golang中ResponseWriter的一個(gè)坑,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧2021-04-04Go與Rust高性能解析JSON實(shí)現(xiàn)方法示例
這篇文章主要為大家介紹了Go與Rust高性能的解析JSON實(shí)現(xiàn)方法示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12重學(xué)Go語(yǔ)言之如何開發(fā)RPC應(yīng)用
這篇文章主要為大家詳細(xì)介紹了在Go語(yǔ)言中如何構(gòu)建RPC應(yīng)用,文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價(jià)值,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-09-09一文帶你感受Go語(yǔ)言空結(jié)構(gòu)體的魔力
在?Go?語(yǔ)言中,有一種特殊的用法可能讓許多人感到困惑,那就是空結(jié)構(gòu)體,本文將對(duì)Go空結(jié)構(gòu)體進(jìn)行詳解,準(zhǔn)備一杯你最喜歡的飲料或茶,隨著本文一探究竟吧2023-05-05