【问题标题】:Error: Compiler version ^0.8.0 does not satisfy the r semver requirement错误:编译器版本 ^0.8.0 不满足 r semver 要求
【发布时间】:2022-07-05 12:16:19
【问题描述】:

我是 Solidity 的新手,我正在 Remix 上运行代码。 我指定的编译器版本无关紧要,我不断收到相同的错误。 有人可以帮我吗? “编译器版本 ^0.8.0 不满足 r semver 要求”究竟是什么意思?

这是我的代码:

// SPDX-License-Identifier: UNLICENSED

pragma solidity ^ 0.8.0;

合约存储{

struct People {
    uint256 favoriteNumber;
    string name;
}

mapping(string => uint256) public nameToFavoriteNumber;
People[] public people;

function addPerson(uint _personFavoriteNumber, string memory _personName ) public {
    people.push(People({favoriteNumber: _personFavoriteNumber, name: _personName}));
    nameToFavoriteNumber[_personName] = _personFavoriteNumber;
}

}

【问题讨论】:

    标签: solidity semantic-versioning remix


    【解决方案1】:

    我有几次同样的问题。在 Remix 中,我在编译器版本中添加了一个“.0”,如下所示:

    pragma solidity ^0.8.4.0;
    

    我也在 Virtual Studio 代码中遇到了这个问题,但我只是忽略了它,一切正常。我希望这会有所帮助!

    【讨论】:

      【解决方案2】:

      它也可以在 Remix 中使用,但我已经处理了最终没有添加“.0”的合约,现在即使它们显示此错误。

      pragma solidity ^0.8.8.0;
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-11-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-10-13
        • 2021-12-04
        • 1970-01-01
        • 2021-04-25
        相关资源
        最近更新 更多