Error: Source "@openzeppelin/contracts/token/ERC721/ERC721.sol" not found: File not found. Searched the following locations: "".目前,来自@openzeppelin的所有依赖项都显示出类似这样的错误。但是这些依赖项已经安装在我的node_modules中,我不知道为什么它找不到文件。是否有一种方法可以设置位置,还是应该全局安装@openzeppelin/contracts?
更新:我可以看到--base-path应该设置为solc,但我仍然不知道如何将这种设置应用于slither。
发布于 2022-08-09 08:12:30
我找到了一种(可能很脏)解决这个问题的方法:
步骤1:转到所有依赖项所在的目录。
在我的例子中,做cd node_modules
步骤2:使用更新的相对路径调用相同的命令。
在我的例子中,从slither contracts/MyContract.sol到slither ../contracts/MyContract.sol
它只是起作用了。在浏览了文档之后,我不认为Slither提供了一种将--base-path调整为标志的方法。
https://stackoverflow.com/questions/73287140
复制相似问题