Go (Golang) 工具之依赖包管理工具goimports | Go语言规范-import规范(导入)排序 |GoLand:设置gofmt与goimports,保存时自动格式化代码

Go (Golang) 工具之依赖包管理工具goimports | Go语言规范-import规范(导入)排序 |GoLand:设置gofmt与goimports,保存时自动格式化代码,第1张

文章目录 Go (Golang) 工具之依赖包管理工具goimportsGo语言规范-import(导入)排序什么是goimports安装和使用Golang 使用goimportsunrecognized import path "golang.org/x/*"的解决办法

Go (Golang) 工具之依赖包管理工具goimports Go语言规范-import(导入)排序

当我们需要通过 import 导入一些包时,如何进行排序呢?

建议顺序:标准库,系统库,第三方库,本项目库,不同分组使用空行分割开。
什么是goimports

golang.org/x/tools/cmd/goimports

Go开发过程中时候总需要手工引入包和删除没有使用的包,此时有人意识到可以改善下,Go官方提供了 GoImports 工具。

goimports可以自动对代码中的依赖包进行管理,如果有用到,就会自动import,也会对没有用到的包进行自动删除。

goimports工具是Go官方提供的一种工具,它能够为我们自动格式化 Go 语言代码并对所有引入的包进行管理,包括自动增删依赖的包引用、将依赖包按字母序排序并分类。

安装和使用
$ go install golang.org/x/tools/cmd/goimports@latest
Golang 使用goimports

我们在使用Goland IDE的时候,建议使用goimports工具。它具备包依赖管理+gofmt的功能。

GoLand也支持在保存代码时,自动调用 gofmt 和 goimports 来自动格式化代码。在最新版的GoLand中,是通过File Watchers插件来实现此功能的。

首先,得保证安装了一个叫做”File Watchers”的插件,并设置为启用状态。默认新版本默认是安装和开启的。

具体配置如下:在File Watchers中添加
go fmt:保存的时候自动 格式化go代码
goimports:保存的时候自动导入处理包
gometalinter:保存的时候自动检查go语法

第一次使用,goimports需要我们进行安装(一般去cmd中执行,我是直接在goland的Terminal中执行的):

$ go install golang.org/x/tools/cmd/goimports@latest

测试
ctrl+s保存代码,查看格式变化

unrecognized import path "golang.org/x/*"的解决办法

由于国内网络原因,因此访问https://golang.org/网站会被限制。所以在go get下载其他第三方包的时候,如果这个第三方包又引用了https://golang.org/x/下的包,通常会下载失败,就会报这个错误。

解决方法

通常是拨VPN到海外进行下载GOPROXY:解决 go get golang.org/x 包失败
Go 版本>=1.13 设置GOPROXY
在 Linux 或 macOS 上面,需要运行下面命令:
go env -w GOPROXY=https://goproxy.cn,direct
# 设置不走 proxy 的私有仓库,多个用逗号相隔
go env -w GOPRIVATE=*.corp.example.com

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/996030.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存