Hyperledger fabric 结构生成错误etcd:不包含包go.etcd.io/etcd/etcdserver/api/snap

Hyperledger fabric 结构生成错误etcd:不包含包go.etcd.io/etcd/etcdserver/api/snap,hyperledger-fabric,hyperledger,etcd,Hyperledger Fabric,Hyperledger,Etcd,我发现我们中的一些人在区块链项目上工作-hyperledger/fabric在本地机器上使用**go mod**(GO111MODULE='on')的命令有类似的错误: build命令行参数:无法加载go.etcd.io/etcd/etcdserver/api/snap:module go.etcd.io/etcd@latest已找到(v3.3.18+不兼容),但不包含包go.etcd.io/etcd/etcdserver/api/snap 答案如下。这将解决上面的错误,但只有在您打开了go

我发现我们中的一些人在区块链项目上工作-hyperledger/fabric在本地机器上使用
**go mod**
GO111MODULE='on'
)的命令有类似的错误:

build命令行参数:无法加载go.etcd.io/etcd/etcdserver/api/snap:module go.etcd.io/etcd@latest已找到(v3.3.18+不兼容),但不包含包go.etcd.io/etcd/etcdserver/api/snap

答案如下。

这将解决上面的错误,但只有在您打开了
go mod
,这意味着env
GO111MODULE='on'
时才有效

因此,在
go mod
打开的情况下,您需要在
hyperledger/fabric
目录中运行命令:

go mod init github.com/hyperledger/fabric
整理一下
然后,如果您运行
make
,错误将显示在终端上

现在,您需要使用此替换来修改
fabric/go.mod
文件:

#替换此:
go.etcd.io/etcd v3.3.18+不兼容
#致:
go.etcd.io/etcd v0.5.0-alpha.5.0.20181228115726-23731bf9ba55
然后跑

go mod tidy
go mod vendor
make clean
make
现在应该没事了

希望这可以节省你一个小时左右