go lint 介绍
是什么
- Golint 是一个源码检测工具用于检测代码规范
- Golint 不同于gofmt, Gofmt用于代码格式化
能干啥
- package注释 必须按照 “Package xxx 开头”
- package命名 不能有大写字母、下划线等特殊字符
- struct、interface等注释 必须按照指定格式开头
- struct、interface等命名
- 变量注释、命名
- 函数注释、命名
- 各种语法规范校验等
踩坑记录
笔者也是刚接触golang 不久 然后就照着网上一顿骚操作,发现解决不了问题,以下是操作过程:
- 在GOPATH/src下创建 以下目录:
1 | mkdir golang.org/x |
- 进入该目录,然后下载golint
1 2 | cd golang.org/x go get github.com/golang/lint |
然后一会茶的功夫,就会在该目录下生成lint 文件夹
- 接下来go install 准备生成golint.exe
1 2 | cd lint/golint go install |
然后就是一堆报错,下面是错误截图
根据日志可以发现,在go install 时发现 golang.org/x/tools/相关的依赖未找到,于是有了下面的骚操作
解决过程
在刚刚下载的lint($GOPATH/src/golang.org/x/lint) 目录下执行以下命令
// 开启go mod
1 | set GO111MODULE=on |
// vendor 一把
1 | go mod vendor -v |
当然有的小伙伴在vendor的时候 下载golang.org/x/tools 时可能会失败(失败原因你懂得),如何解决参考这位兄弟(https://blog.csdn.net/x356982611/article/details/83379013)
至此以上工作做完后,再试一把
1 2 | cd golint go install |
可以看到已经成功
如何用
goland 配置 golint
参考: goland 配置 golint