下载包 go get
-x :下载依赖包,并显示执行的命令
构建 go build
-n :显示构建过程的命令,但不执行
-x :显示执行构建的命令
-o :构建输出可执行文件
go build -o app
运行
go run .
包依赖
go mod tidy && go mod vendor
如果遇到以下问题,则是由代码中引入的package地址与项目的git仓库不一致导致的。
例如:
代码中引入package github.com/coreos/prometheus-operator/pkg/client
, 但它的git仓库是github.com/prometheus-operator/prometheus-operator/pkg/client
,在执行go mod tidy则会报错:
go: example.com/operator imports
github.com/coreos/prometheus-operator/pkg/client/versioned: github.com/coreos/prometheus-operator/pkg/client@v0.57.0: parsing go.mod:
module declares its path as: github.com/prometheus-operator/prometheus-operator/pkg/client
but was required as: github.com/coreos/prometheus-operator/pkg/client
需要在当前项目中的go.mod中添加replace
module example.com
go 1.18
replace github.com/coreos/prometheus-operator/pkg/client => github.com/prometheus-operator/prometheus-operator/pkg/client v0.57.0
或者执行
go mod edit -replace github.com/coreos/prometheus-operator/pkg/client=github.com/prometheus-operator/prometheus-operator/pkg/client@v0.57.0
展示包下的函数 go doc
go doc net/http
go doc fmt.Printf
Go 升级
下载最新版GO:The Go Programming Language
$ go env GOROOT
/usr/local/go
## 将下载文件解压,替换GOROO文件夹内容