Go Module

Golang 在 1.11 開始就推出了 Go Module,我是從這邊就直接使用 Go Module了

go Module 語法

幾個與moudule 有關的指令與參數紀錄

go mod init [module_path]
go mod tidy 添加需要用到但go.mod中查不到的模块,删除未使用的模块
go mod download
go mod graph
go mod why
go env -w GOFLAGS=-mod=mod

go help get usage: go get [-d] [-t] [-u] [-v] [-insecure] [build flags] [packages]
go get github.com/fatih/color@v1.8.0. # 下載特定版本的 go package

如果你看到以下錯誤訊息,表示沒有先下go mod init

//go.mod file not found in current directory or any parent directory; see 'go help modules'

go mod init [module_path]

這個後面位置可以是github.com/username/myproject,並不需上傳就可以設定,之後可以再上傳到github上

Go 1.14 的 Go Modules 已經是正式版本, 來管理套件。就無需擔心 $GOPATH 與專案放置的位置。專案中的 go.mod 檔案假設你的專案放置在 GitHub 中,但這不是必須的。模組路徑可以是任意位址

go ​clean

第三方套件將會放置在$GOPATH/pkg/mod directory.

  • go ​clean -modcache

//$go ​clean -modcache 指令將會刪除mod資料夾
The -modcache flag causes clean to remove the entire module
download cache, including unpacked source code of versioned
dependencies.

參考

Last updated