在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
go-micro安装成功后(安装过程百度很多),会报错:
原因:在go-micro里面引用的etcd的包是 3这样一来可能就需要改源码了。 找到包gins/registry/etcdv3下发现两个文件一个个改掉就好 watcher.go: import ( "context" "errors" "time" "github.com/micro/go-micro/v2/registry" //"github.com/coreos/etcd/clientv3" # 原有的 "go.etcd.io/etcd/clientv3" # 修改后的 ) etcd.go import ( "context" "crypto/tls" "encoding/json" "errors" "net" "path" "sort" "strings" "sync" "time" //"github.com/coreos/etcd/clientv3" # 原有的 "go.etcd.io/etcd/clientv3" # 修改后的 "github.com/micro/go-micro/v2/logger" "github.com/micro/go-micro/v2/registry" hash "github.com/mitchellh/hashstructure" //"github.com/coreos/etcd/etcdserver/api/v3rpc/rpctypes" # 原有的 "go.etcd.io/etcd/etcdserver/api/v3rpc/rpctypes" # 修改后的 "go.uber.org/zap" ) 然后就报错得到解决 .....
因为go-micro v2.0后,去除了对consul 的支持(github.com/micro/go-micro/registry里面没有consul目录),但支持etcd、mdns作为服务发现,但是老版本的go-micro仍支持consul,但是有些地方做了调整。 首先,需要go 1.13的支持 然后,在获取go-micro库时,不能使用这个指令了 go get -u github.com/micro/go-micro 改为:go get -u github.com/micro/go-micro/v2 原来go-micro consul的支持已经迁移到了go-plugins里面 我们的代码里在导入consul库时,也变为了: "github.com/micro/go-plugins/registry/consul" 这个在下面的代码里可以看到 然后,没有安装gin的同学,需要使用如下指令获取下: go get -u github.com/gin-gonic/gin
|
请发表评论