首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Foundry中不支持的文件导入回调错误

Foundry中不支持的文件导入回调错误
EN

Ethereum用户
提问于 2022-07-04 03:37:18
回答 2查看 1.2K关注 0票数 3

我在用Foundry写一份聪明的合同。当我试图像这样从github导入合同时:

代码语言:javascript
运行
复制
import "@openzeppelin/contracts/token/ERC20/IERC20";

我会看到这样的错误:

代码语言:javascript
运行
复制
Source "@openzeppelin/contracts/token/ERC20/IERC20" not found: File import callback not supported

我想我已经做了必要的事情,我在其中加入了这样的方案:

forge install Openzeppelin/openzeppelin-contracts

并在foundry.toml文件中进行书面的映射。

代码语言:javascript
运行
复制
remappings = ["@openzeppelin/=lib/openzeppelin-contracts/contracts"]

但我还是看到了错误。我怎样才能纠正错误?

EN

回答 2

Ethereum用户

发布于 2022-07-04 10:14:15

试着换第二个。重新映射的右侧的“合同”

如果使用VS代码,请将其添加到项目根目录中的.vscode中,如下所示:

代码语言:javascript
运行
复制
{ "solidity.packageDefaultDependenciesContractsDirectory": "src", 
"solidity.packageDefaultDependenciesDirectory": "lib",
 "solidity.compileUsingRemoteVersion": "v0.8.15", 
"solidity.remappings": [ "forge-std/=lib/forge-std/src/", 
                     "@openzeppelin/=lib/openzeppelin-contracts/",] 
} 
票数 3
EN

Ethereum用户

发布于 2022-09-07 14:48:38

重映射必须在remapping.txt文件中,而不是在foundry.toml中。

后加

代码语言:javascript
运行
复制
@openzeppelin/=lib/openzeppelin-contracts/

对于这个remamping.txt,错误应该消失。

请参阅:https://book.getfoundry.sh/projects/dependencies

“您可以通过在项目根目录中创建一个remappings.txt文件来自定义这些映射。”

票数 0
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/131140

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档