一、背景
Go语言被誉为近年来发展最快的编程语言之一,其高效、简洁、可靠等特性,备受开发人员的青睐。在Go语言的应用开发过程中,常常需要使用到各种插件。为方便大家使用,本文记录了golang插件安装的相关过程。
二、安装golang
如果您还没有安装Go语言,可以前往官网下载并安装,安装过程较为简单,不再赘述。本文假设已完成Go语言的安装。
三、安装golang插件
立即学习“go语言免费学习笔记(深入)”;
1.安装go-bindata
go-bindata是一个将任意文件转化为Go语言源文件,并且可以将多个文件合并为一个.go文件的工具,安装方法如下:
$ go get github.com/jteeuwen/go-bindata/...
登录后复制
2.安装gogoproto
gogoproto是一个基于Google Protocol Buffers的功能增强库,安装方法如下:
$ go get github.com/gogo/protobuf/protoc-gen-gofast$ go get github.com/gogo/protobuf/protoc-gen-gogofast$ go get github.com/gogo/protobuf/protoc-gen-gogofaster$ go get github.com/gogo/protobuf/protoc-gen-gogoslick
登录后复制
3.安装goreman
goreman是一个管理和监视进程的工具,安装方法如下:
$ go get github.com/mattn/goreman
登录后复制
4.安装govendor
govendor是一个插件,用于管理依赖项,方便开发人员管理自己的代码库。 安装方法如下:
$ go get -u github.com/kardianos/govendor
登录后复制
5.安装gomock
gomock是一个实现了Golang的Mocking Framework,用于单元测试。 安装方法如下:
$ go get github.com/golang/mock/gomock$ go install github.com/golang/mock/mockgen
登录后复制
四、使用go插件
安装好插件后,就可以使用对应的工具来实现相应的功能了。下面简单介绍一下在项目中的使用方法。
1.使用go-bindata
go-bindata将一组文件打包成一个Go源代码文件,以方便后续的引用,使用方法如下:
$ go-bindata -pkg=resources -o pkg/main/resources/bindata.go assets/
登录后复制
2.使用gogoproto
在protobuf文件的目录下执行如下命令行:
$ protoc -I . -I $GOPATH/src --gogofaster_out=plugins=grpc:. *.proto
登录后复制
3.使用goreman
创建一个名为Procfile的文件,并在其中为每个进程编写一行。如下所示:
web: go run main.go httpworker: go run main.go worker
登录后复制
然后执行如下命令行:
$ goreman start
登录后复制
4.使用govendor
使用govendor创建一个新的项目:
$ mkdir myproject$ cd myproject$ go init$ govendor init
登录后复制
使用govendor添加依赖项:
$ go get github.com/fatih/color$ govendor add +external
登录后复制
然后使用govendor来安装依赖:
$ govendor sync
登录后复制
5.使用gomock
gomock可以用于生成Mock代码,以便进行单元测试。 使用gomock的步骤如下:
1.创建一个接口,该接口表示将要进行mock的对象。
2.使用mockgen生成Mock代码。
3.编写测试用例,并使用Mock对象进行测试。
五、总结
本文简单介绍了golang插件的安装方法,希望能够为大家的golang开发工作提供一些帮助。当然,这里列举的只是常用的几个插件,还有很多其他的插件也值得使用。
以上就是记录一下golang插件安装的相关过程的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2411767.html