Remix IDE在线版导入OpenZeppelin库报Contract not found如何解决
Remix IDE 导入OpenZeppelin第三方库报错的正确解决方法
错误写法排查
你之前使用的两种写法存在以下问题:
- 第一种简写路径缺少版本号标识,且
SafeMath. sol文件名中间存在多余空格,不符合路径规则 - 第二种写法使用
blob开头的GitHub网页预览链接,Remix无法直接解析该类型地址获取合约代码
正确导入方式
方式1:使用Remix支持的GitHub简写路径(优先使用)
根据你使用的pragma solidity ^0.4.24版本,匹配适配的OpenZeppelin v2.5.0版本,写法如下:
pragma solidity ^0.4.24; import "github.com/OpenZeppelin/openzeppelin-contracts@v2.5.0/contracts/math/SafeMath.sol";
注意:必须在仓库名称后添加@对应版本号,确保拉取的代码和编译器版本兼容
方式2:使用GitHub原始代码直链
如果需要使用完整链接,要替换为raw.githubusercontent.com开头的原始代码地址:
pragma solidity ^0.4.24; import "https://raw.githubusercontent.com/OpenZeppelin/openzeppelin-contracts/v2.5.0/contracts/math/SafeMath.sol";
额外注意事项
- 导入前确认Remix编译器版本设置为
0.4.24区间,不要和OpenZeppelin版本要求冲突 - 若导入后仍有异常,可刷新Remix页面重新触发依赖拉取后再编译
内容的提问来源于stack exchange,提问作者gbenga ogunbule
相关产品推荐
相关产品推荐

