一個Golang小白的學習筆記,希望與大家共同學習,寫得不好的地方,請大家指正,多謝!~
在Windows安裝Go語言開發環境比較簡單,Go官方提供了msi和zip兩種格式的安裝包,我們可以根據自己的作業系統選擇32位的還是64位的,下載對應的安裝包。
安裝
1. msi安裝包
使用msi安裝包,只需要按照安裝介面提示安裝即可,安裝過程會根據我們選擇的安裝目錄,配置好環境變數。
2. zip安裝包
將下載好的zip安裝包解壓縮到某個目錄下(推薦是C:\go)即可
配置環境變數
1. GOROOT
GOROOT指向的是Go的安裝目錄。
如果使用msi包安裝的話,則安裝工具已經預設幫我們配置了GOROOT環境變數,並將GOROOT/bin目錄配置到PATH環境變數中。
如果使用zip安裝包,我們就需要自己將zip解壓的目錄配置到GOROOT變數中,配置方式如下
控制台 > 系統 > 進階系統設定 > 進階 > 環境變數
通過以上步驟可以開啟Windows環境變數配置視窗,在使用者變數(目前使用者可使用)或系統變數(所有系統使用者可使用)中建立GOROOT變數,變數值為Go安裝目錄,並將%GOROOT/bin%添加到PATH環境變數的末尾即可。
配置完成後在CMD命令中運行go命令,運行結果如下表示已經配置成功
> goGo is a tool for managing Go source code.Usage: go command [arguments]The commands are: build compile packages and dependencies clean remove object files doc show documentation for package or symbol env print Go environment information bug start a bug report fix run go tool fix on packages fmt run gofmt on package sources generate generate Go files by processing source get download and install packages and dependencies install compile and install packages and dependencies list list packages run compile and run Go program test test packages tool run specified go tool version print Go version vet run go tool vet on packagesUse "go help [command]" for more information about a command.Additional help topics: c calling between Go and C buildmode description of build modes filetype file types gopath GOPATH environment variable environment environment variables importpath import path syntax packages description of package lists testflag description of testing flags testfunc description of testing functionsUse "go help [topic]" for more information about that topic.
2. GOPATH
GOPATH環境配置的是Go語言的工作區,配置方式與GOROOT相同,但不可以與GOROOT指向同一目錄,即不可指向Go語言安裝目錄,在Go1.1~Go1.7都需要GOPATH,在Go1.8以後,如果不配置,在Windows作業系統下,則GOPATH預設值%USERPROFILE%的值。
按照GO語言規範,GOPATH指向的目錄下必須有三個目錄:src,bin,pkg,src存放我們開發的Go項目源碼,也就是以後我們寫代碼的地方,bin存放編譯後產生的可執行檔,pkg存放編譯後產生的檔案。
一般GOPATH目錄如下
$GOPATH bin/ main.exe pkg/ windows_amd64 lib.a src/ main.go lib lib.go
第一個Go語言程式
在GOPATH的src目錄建立main.go檔案,代碼如下
package mainimport "fmt"func main(){ fmt.Println("Hello World")}
運行
src> go run main.goHello World