文章目錄
一、安裝 golang
- 從官網下載安裝包,安裝,一直下一步
- 環境變量自動設置好了,不用自己添加
- 用
go version
測試安裝是否成功,顯示版本號就成功了E:\>go version go version go1.13.5 windows/amd64
二、用 go modules 創建項目
-
開啓 go modules
go env -w GO111MODULE=on #開啓 go modules
-
在任意路徑下(除GOPATH以外)創建項目目錄,並初始化go modules
mkdir example cd example #go go mode init example # go1.14.2 之後版本改爲: go mode init example.com/example
example.com 是示例域名,example 是該示例的項目名,可以換成其它的。
-
新建 hello.go 文件,並填入以下代碼
package main import "fmt" func main() { fmt.Printf("hello, world\n") }
-
執行運行命令:
go run hello.go
輸出 hello world。表示項目創建成功。
-
引入第三方模塊
//修改 hello.go package main import ( "fmt" + "github.com/astaxie/beego" //第三方模塊 ) func main() { fmt.Printf("hello, world\n") + beego.Run() }
-
手動安裝第三方包
修改 go.mod 文件module example go 1.13 + require github.com/astaxie/beego v1.12.0
執行命令進行安裝
go mod download #安裝第三方模塊
-
安裝第三方模塊(module)失敗,設置 goproxy 解決。
go env -w GOPROXY=https://goproxy.io
也可以設置阿里的鏡像 https://mirrors.aliyun.com/goproxy/
-
執行 run 或 build 命令,自動安裝第三方模塊(module)
go build -o hello.exe hello.go #構建,安裝第三方模塊 # 或者 go run hello.go #運行,安裝第三方模塊
三、引用 import
1. 引用第三方模塊(module)
返回目錄
上面有涉及,略
2. 引用同包(package)內文件
- 一個文件夾內 最好存放 同一個 package 的代碼文件。
- package 的名稱最好與 文件夾名 相同。
- 同 package 名的代碼文件可以互相調用各自聲明的方法,不用引用,不區分方法名首字母大小寫。
3. 引用內部包(package)
- example 項目
/ example + |--/ lib + | |-- lib1.go |-- go.mod |-- main.go
- / lib / lib1.go,內部包定義
package lib import "fmt" func SayGoodbye() { fmt.Printf("Goodbye!\n") }
- main.go,引用內部 package
package main import ( "fmt" + "example/lib" //引用內部包 + // lib "example/lib" //別名引用, ) func main() { fmt.Printf("hello, world\n") + lib.SayGoodbye() //調用內部包方法,只能調用首字母大寫的方法 }
- 運行項目
go run main.go
4. 引用外部開發中的模塊(module)
- 修改 go.mod
module example go 1.14 + require another v0.0.0 + replace another v0.0.0 => ../another
- 修改 main.go
package main import ( "fmt" + "another" //引用外部開發中的模塊 ) func main() { fmt.Printf("hello, world\n") + another.Another() //調用外部模塊的方法,首字母大寫的方法 }
- 執行 run 命令
go run main.go
四、發佈 go module
- 新建個 go modules 項目。
- 不要用 main 命名 package,用模塊名命 package。
- 要暴露的 api 方法首字母大寫。
- 發佈到 github
五、安裝 go 額外的版本
- 執行命令
go get golang.org/dl/go1.10.7 GOPATH/go1.10.7 download //下載 GOPATH/go1.10.7 version //驗證