我发现我们中的一些人在区块链项目中工作-hyperledger/fabric在具有**go mod**
(GO111MODULE='on'
(的本地机器中有类似的命令**make**
错误:
build command-line-arguments: cannot load go.etcd.io/etcd/etcdserver/api/snap: module go.etcd.io/etcd@latest found (v3.3.18+incompatible), but does not contain package go.etcd.io/etcd/etcdserver/api/snap
答案如下。
这将解决上面的错误,但只有在打开go mod
(即envGO111MODULE='on'
(时才有效。
因此,在go mod
打开的情况下,您将需要在hyperledger/fabric
目录中运行命令:
go mod init github.com/hyperledger/fabric
go mod tidy
然后,如果运行make
,错误将在终端上显示出来。
现在,您需要用以下替换项修改fabric/go.mod
文件:
# replace this :
go.etcd.io/etcd v3.3.18+incompatible
# to :
go.etcd.io/etcd v0.5.0-alpha.5.0.20181228115726-23731bf9ba55
然后运行
go mod tidy
go mod vendor
make clean
make
现在应该没事了。
希望这能为你节省一个小时左右。