You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Hyperledger Go SDK v1.0.0-alpha3与Fabric v1.1.0不兼容致dep ensure报错如何解决?

解决Hyperledger Fabric v1.1.0与milagro-crypto/amcl依赖冲突问题

我之前维护基于Fabric v1.1.0和fabric-sdk-go v1.0.0-alpha3的项目时,也碰到过完全一样的问题。这个错误的核心原因是:Fabric v1.1.0依赖的是milagro-crypto/amcl的旧版本,但dep ensure默认会拉取master分支,而该分支后来重构了目录结构,原来的version3/go/amcl等子包已经被移除了。

下面是具体的解决步骤:

  1. 修改Gopkg.toml添加版本约束
    打开项目根目录下的Gopkg.toml文件,添加以下约束条目,指定Fabric v1.1.0兼容的amcl版本:

    [[constraint]]
      name = "github.com/milagro-crypto/amcl"
      revision = "7a6a39e661bf"
    

    这个commit是Fabric v1.1.0官方依赖的amcl版本,能确保子包路径完全匹配。

  2. 清理旧依赖缓存(可选但推荐)
    删除项目根目录下的Gopkg.lock文件和vendor文件夹,避免旧的依赖缓存干扰新的依赖解析:

    rm Gopkg.lock
    rm -rf vendor
    
  3. 重新执行依赖安装
    运行dep ensure命令重新拉取并安装符合约束的依赖:

    dep ensure -v
    

    加上-v参数可以看到详细的依赖解析过程,方便排查后续可能出现的问题。

如果执行完这些步骤还是有问题,可以检查你的Gopkg.toml里是否有其他和amcl相关的约束,确保没有冲突的版本要求。

内容的提问来源于stack exchange,提问作者angelokh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 07:15:06