VSC Solidity 扩展无法读取 Brownie 的重新映射。我假设您收到此错误:
来源
“@chainlink/contracts/src/v0.6/interfaces/AggregatorV3Interface.sol”
未找到:不支持文件导入回调
来源“@openzeppelin/contracts/token/ERC721/ERC721Full.sol”不是
发现:不支持文件导入回调
确保在brownie-config.yaml中正确设置依赖项和重新映射:
dependencies:
- smartcontractkit/chainlink-brownie-contracts@0.2.1
- OpenZeppelin/openzeppelin-contracts@3.4.0
compiler:
solc:
remappings:
- '@chainlink=smartcontractkit/chainlink-brownie-contracts@0.2.1'
- '@openzeppelin=OpenZeppelin/openzeppelin-contracts@3.4.0'
编译你的合同:
brownie compile
如果编译成功,Brownie应该已经下载了包,可以运行确认
brownie pm list
为 VSCode Solidity 扩展设置重新映射(例如在 ./vscode/settings.json 中)。
"solidity.remappings": [
"@chainlink/=<PATH_TO_BROWNIE_STUFF>/.brownie/packages/smartcontractkit/chainlink-brownie-contracts@0.2.1",
"@openzeppelin/=<PATH_TO_BROWNIE_STUFF>/.brownie/packages/OpenZeppelin/openzeppelin-contracts@3.4.0",
]
确保您在所有配置文件中都获得了正确的版本 (@x.x.x)。
如果您使用的是 Linux,<PATH_TO_BROWNIE_STUFF> 可能是您的主目录 (/home/jjreedv)