1

我正在按照 Brownie 的文档将包添加到我的 Solidity 项目中。我必须添加Uniswap/v2-coreUniswap/v2-periphery。为了做到这一点,我在终端中调用了以下几行:

这个工作正常,它安装了包

brownie pm install Uniswap/v2-core@1.0.1

但是,当我调用以下行时,我收到了ValueError: Invalid version for this package. Available versions are: 1.0.0-beta.0奇怪的错误,因为在 Github上有@1.1.0-beta.0版本而不是1.0.0-beta.0

brownie pm install Uniswap/v2-periphery@1.1.0-beta.0

问题是我可以以某种方式强制布朗尼识别有效版本还是有任何其他方法来解决这个问题?

4

1 回答 1

1

Stack Exchange ETH上也有人问过这个版本

您完全按照此处所做的操作,添加整个发布字符串。

例如:

dependencies:
   - OpenZeppelin/openzeppelin-contracts@3.2.1-solc-0.7
compiler:
    solc:
        remappings:
            - "@openzeppelin=OpenZeppelin/openzeppelin-contracts@3.2.1-> solc-0.7"

你现在不工作的原因是https://github.com/Uniswap/v2-periphery没有任何版本,它只有标签。

然后你可以做的,是分叉 repo,自己发布并指向你自己的发布,直到他们真正发布一些东西。

失败的原因是Github 上没有该软件包的版本(截至目前)。

这是我要做的:

  1. 分叉回购
  2. 在你自己的 github 上剪切一个版本
  3. 指向brownie-config.yaml与我们在上面引用中显示的类似的回购。
于 2021-11-23T12:54:59.320 回答