坚实的汇编是一团混乱:皱眉:
我在努力找出为什么我的合同有时会编译,有时不是…现在我明白了,…
我正在使用本地ganache服务器和在线IDE remix.ethereum.org
希望编译该文件:
pragma solidity >=0.6.12;
import "https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/access/Ownable.sol";得到这个错误:
https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/GSN/Context.sol:1:1: ParserError: Source file requires different compiler version (current compiler is 0.6.12+commit.27d51765.Emscripten.clang) - note that nightly builds are considered to be strictly less than the released version pragma solidity ^0.5.0; ^---------------------^当我查看Context.sol时(在错误弹出窗口上单击“混合”):
pragma solidity ^0.5.0;在github (在inport链接之后),是否有版本:
pragma solidity >=0.6.0 <0.8.0;我的导入不应该从自己的路径导入.sol吗?怎么一回事?部署后是否有可能“刷新”混合编译的文件?-我想这就是重点,因为我有另一个使用旧版本的契约。
感谢希望帮助:D
编辑:好的,我发现当我使用与firefox的混合,而不是与chrome一起使用它时,它并没有发生。还有一个libary "github“,openzeppelin里面有我导入的所有合同(只有那个),但不在本地目录中.
发布于 2020-12-19 00:43:36
目前的openzeppelin合同使用:
pragma solidity >=0.6.0 <0.8.0;..。所以我不太确定在哪里
pragma solidity ^0.5.0;实际上是来自。你可以在这里看到:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/GSN/Context.sol
..。这与您所使用的其他文件的版本不同。这可能是pragma在做它的工作,并提醒您有什么不对劲的情况。
希望能帮上忙。
https://ethereum.stackexchange.com/questions/91270
复制相似问题