1、對GOPATH和GOROOT理解不到位
GOROOT設定為/usr/local/go 。 GOPATH設定為/usr/local/go/bin。我們在go get程式碼的時候,下載下來的包,如github.com/Ballwang/imooc所在的路徑為GOPATH/src/github.com/Ballwang/imooc。需要注意,這裡的imooc是一個資料夾而不是一個檔案。
註:go build 是將原始碼檔案編譯成一個二進位的可執行文件,如go build test.go可以在test.go所在的imooc檔案目錄下產生一個test可執行檔。只需./test便可輸出執行結果。 go run則是將程式直接運作並輸出結果,不會產生二進位執行檔。
2、我們要保證我們執行編譯的源碼檔案位於GOPATH/src目錄下,否則會報出type相關的異常。
3、本機找不到package
解決:在GoLand中使用go get指令,將需要的套件下載下來。
go get 套件名稱 可以藉助程式碼管理工具透過遠端拉取的方式更新程式碼包及其依賴,並自動完成編譯和安裝。使用 go get 前,需要安裝git作為程式碼管理工具。一次go get,就能在GOPATH中新增若干相關的依賴包。
4、golang.org/x 類型的套件get不下來
解決:其實golang 在github 上建立了一個鏡像庫,如https://github.com/golang/net即是https://golang.org/x/net 的鏡像庫。
可以在鏡像庫中將套件拉取下來,再依照import的層次結構,依序建立相關的資料夾,並將檔案複製到相關的檔案中。
5、pcap.h: No such file or directory
解決:yum install libpcap-devel
6、同一個package下不同go檔案中的方法、變量都可以互相調用,單執行一個檔案go run file.go會報方法、變數undefined異常。原因是undefined部分所在的另一個go檔並未一起編譯。
解決方法:go run *.go 一起編譯
7、package main、func main(){} 標誌著go程式的入口。
更多go語言請關注go語言教學專欄。
以上是go語言一些使用經驗(精選)的詳細內容。更多資訊請關注PHP中文網其他相關文章!