go mod

go mod 是官方go的管理依赖的工具,集成在go1.11版本以上。基于最小版本选择(mvs)管理。

1. 初始化

go mod init

go.mod文件一旦创建后,它的内容将会被go toolchain全面掌控。go toolchain会在各类命令执行时,比如go get、go build、go mod等修改和维护go.mod文件。

2. 编译

go build ./...

若出现

fatal: could not read Username for ' https://gitlab.com' : terminal prompts disabled

Confirm the import path was entered correctly.

的错误,则改命令为:

GIT_TERMINAL_PROMPT=1 go build ./...

3. go get

在build时,go module模块会自动将依赖的包缓存在$GOPATH/pkg/cache/download下,由于国际知名原因,golang.org域名被屏蔽,会出现诸如 go: converting vendor/vendor.json: stat google.golang.org/grpc/serviceconfig@92635fa6bffd9db9b2cca8ce8f978bfebabd9c29 : unrecognized import path " google.golang.org/grpc/serviceconfig " (https fetch: Get https://google.golang.org/grpc/serviceconfig?go-get=1 : dial tcp 216.239.37.1:443: connect: connection refused) 这样的错误。

因此,对于一些golang的官方包,可以直接在github镜像库里git clone下来之后,手动放入缓存的那个路径,然后重启vscode重新build即可。

我来评几句
登录后评论

已发表评论数()

相关站点

热门文章