在尝试解决我的项目的另一个问题时,我一定是在此过程中破坏了一些东西,但我不知道如何解决这个问题。
这些是我对该项目的导入语句:
pragma solidity >=0.6.6;
import "@openzeppelin/contracts/token/ERC721/ERC721.sol";
import "@chainlink/contracts/src/v0.6/VRFConsumerBase.sol";
这是我的 brownie-config.yaml
depencencies:
- OpenZeppelin/openzeppelin-contracts@3.4.0
- smartcontractkit/chainlink-brownie-contracts@1.0.2
compiler:
solc:
remappings:
- '@openzeppelin=OpenZeppelin/openzeppelin-contracts@3.4.0'
- '@chainlink=smartcontractkit/chainlink-brownie-contracts@1.0.2'
但是尽管所有这些工作直到昨天,尝试编译只会给我这些错误:
PS C:\Users\XXX\Desktop\Project> brownie compile
INFO: Could not find files for the given pattern(s).
Brownie v1.16.4 - Python development framework for Ethereum
New compatible solc version available: 0.6.6
Compiling contracts...
Solc version: 0.6.6
Optimizer: Enabled Runs: 200
EVM Version: Istanbul
CompilerError: solc returned the following errors:
contracts/AdvancedCollectible.sol:3:1: ParserError: Source "OpenZeppelin/openzeppelin-contracts@3.4.0/contracts/token/ERC721/ERC721.sol" not found: File not found.
import "@openzeppelin/contracts/token/ERC721/ERC721.sol";
^-------------------------------------------------------^
contracts/AdvancedCollectible.sol:4:1: ParserError: Source "smartcontractkit/chainlink-brownie-contracts@1.0.2/contracts/src/v0.6/VRFConsumerBase.sol" not found: File not found.
import "@chainlink/contracts/src/v0.6/VRFConsumerBase.sol";
^---------------------------------------------------------^
我该如何解决这个问题?我已经看到了一些类似问题的答案,这些问题引用了 node.js 或我尝试导入的东西的本地副本,但是这个命令不应该从 github 上提取东西吗?为什么它没有突然这样做呢?