Go插件安装

Table of Contents

1. 常用Go插件

2. 安装插件包

3. golint插件安装使用

3.1 安装

3.2 编译

3.3 执行方式

4. goimports插件安装使用

4.1 安装

4.2 编译

4.3 使用

5. Go tool简单使用

5.1 go tool vet

6. GoReporter简单使用

6.1 执行格式:

6.2 参数说明


1. 常用Go插件

插件名称

说明

备注

gocode

Completion Lists 代码自动完成

 

godef

Quick Info 快速提示信息

 

go-find-references

Find References 搜索参考引用

 

go-outline

File outline 文件大纲

 

go-symbols

Workspace symbol search 工作区符号搜索

 

gorename

Rename 重命名

 

go build或go test

Build-on-save 保存构建

 

goreturns

Format 代码格式化

 

goimports

Format 代码格式化

 

gofmt

Format 代码格式化

重新格式化Go源代码

 

gopkgs

Add Imports 自动完成导入未导入的 packages

 

golint

Linter 静态分析检查

 

gometalinter

Linter 静态分析检查

 

delve

Debugging 调试代码

 

errcheck

ErrorChecking 检查代码中未检查的错误

 

varcheck

VarChecking 查找未调用的全局变量和常量

 

deadcode

UnusedCode 查找未调用的代码

 

goimports

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

 

go vet

代码的语法检查

 

GoReporter

用于执行静态分析,单元测试,代码审查和生成代码质量报告。

 

 

2. 安装插件包

       go get ... 自动下载代码到$GOPATH/src目录;并在$GOPATH/bin目录下生成可执行文件,例如

go get -u -v github.com/nsf/gocode //

go get -u -v github.com/rogpeppe/godef //

go get -u -v github.com/zmb3/gogetdoc //

go get -u -v github.com/golang/lint/golint // 代码的风格检测

go get -u -v github.com/lukehoban/go-outline //

go get -u -v sourcegraph.com/sqs/goreturns //

go get -u -v golang.org/x/tools/cmd/gorename //

go get -u -v github.com/tpng/gopkgs //

go get -u -v github.com/newhook/go-symbols //

go get -u -v golang.org/x/tools/cmd/guru //

go get -u -v github.com/cweill/gotests/... //

备注:

       如果通过go clone 下载的代码包,需要通过进入代码目录执行go install 在$GOPATH/bin目录下生成可执行文件

 

3. golint插件安装使用

     Golint用于检查go代码中不够规范的地方。

3.1 安装

mkdir -p $GOPATH/src/golang.org/x/

cd $GOPATH/src/golang.org/x/

git clone https://github.com/golang/lint.git

3.2 编译

cd $GOPATH/src/golang.org/x/lint/golint

go install

结果会在$GOPATH/bin目录下生成golint可执行文件

3.3 执行方式

golint 文件名或者目录

例如:

➜  coupon git:(ma-srvpro_1-0-192_BRANCH) ✗ golint obtain.go
obtain.go:20:2: don't use ALL_CAPS in Go names; use CamelCase
obtain.go:21:2: don't use ALL_CAPS in Go names; use CamelCase
obtain.go:24:2: don't use ALL_CAPS in Go names; use CamelCase
obtain.go:25:2: don't use ALL_CAPS in Go names; use CamelCase
obtain.go:28:2: don't use ALL_CAPS in Go names; use CamelCase
obtain.go:30:2: don't use ALL_CAPS in Go names; use CamelCase
obtain.go:31:2: don't use ALL_CAPS in Go names; use CamelCase

 

4. goimports插件安装使用

 

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

4.1 安装

cd $GOPATH/src/golang.org/x/

git clone https://github.com/golang/tools.git

4.2 编译

cd $GOPATH/src/golang.org/x/tools/cmd/goimports

go install

结果会在$GOPATH/bin目录下生成goimports可执行文件

4.3 使用

在sublime配置goimports

在sublime安装GoSublime插件,在插件用户配置文件中写入:

{ "fmt_cmd": ["goimports"] }

配置完成后在sublime编写go代码时,每次ctrl+s保存文件或者ctrl+b编译文件时,goimports会自动执行并对go代码进行包依赖的检查,对于用到却未引入的包会进行自动引入,对于引入却未使用的包会进行自动删除。

 

5. Go tool简单使用

models git:(ma-srvpro_1-0-192_BRANCH) ✗ go tool
addr2line
api
asm
buildid
cgo
compile
cover
dist
doc
fix
link
nm
objdump
pack
pprof
test2json
trace
vet

5.1 go tool vet

  vet用于代码的语法检查

使用go tool vet针对单个文件进行代码检查

go tool vet global/init.go

使用go tool vet针对整个项目进行代码检查

go tool vet page
page/authentication/base.go:24: struct field tag `json:signature"` not compatible with reflect.StructTag.Get: bad syntax for struct tag value

 

6. GoReporter简单使用

6.1 执行格式:

goreporter -p [projectRelativePath] -r [reportPath] -e [exceptPackagesName] -f [json/html] {-t templatePathIfHtml}

6.1.1 参数说明

-p 有效的相对路径

-r 报告保存的地址

-e 例外的包,多个包使用逗号分隔。例如: "linters/aligncheck,linters/cyclo" ).

-f 生成报告的格式

-t 模版路径,不设置会使用默认模版

默认会生出HTML格式的报告

你可能感兴趣的:(编程语言)