背景
新项目projectA使用的vendor来管理依赖,需要增加grpc的库
qiantao@qiant backend % echo $GOPATH
/Users/qiantao/work/gotestsrc
方案
先安装govendor
安装方案 https://shockerli.net/post/go-package-manage-tool-govendor/
安装grpc
安装官方安装命令:
go get google.golang.org/grpc
是安装不起的,会报:
package google.golang.org/grpc: unrecognized import path "google.golang.org/grpc"(https fetch: Get https://google.golang.org/grpc?go-get=1: dial tcp 216.239.37.1:443: i/o timeout)
原因是这个代码已经转移到github上面了,但是代码里面的包依赖还是没有修改,还是google.golang.org这种,
所以不能使用go get的方式安装,正确的安装方式:
git clone https://github.com/grpc/grpc-go.git $GOPATH/src/google.golang.org/grpc
git clone https://github.com/golang/net.git $GOPATH/src/golang.org/x/net
git clone https://github.com/golang/text.git $GOPATH/src/golang.org/x/text
go get -u github.com/golang/protobuf/{proto,protoc-gen-go}
git clone https://github.com/google/go-genproto.git $GOPATH/src/google.golang.org/genproto
cd $GOPATH/src/
go install google.golang.org/grpc
在项目根目录下执行(根目录下已经有vendor目录):
govendor add google.golang.org/grpc
注意事项
- 目录
$GOPATH/src/google.golang.org/grpc
$GOPATH/src/projectA
$GOPATH/src/projectA/vendor/vendor.json
有疑问加站长微信联系(非本文作者)