VScodeSolidity扩展-找不到openzepplin导入
我正在尝试开始使用应该是非常简单的 Solidity 合同,但是 VSCode 给我带来了困难。我正在使用 Juan Blancos solidity 插件,但 VSCode 找不到 openzepplin 导入
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
错误是:
找不到源“@openzeppelin/contracts/token/ERC20/ERC20.sol”:不支持文件导入回调
即使 vscode 显示红色波浪线,我也可以通过hardhat compile成功编译。
如果我将路径更改为
import "../node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol";
VScode 停止抱怨,但随后我无法通过 hardhard 进行编译,错误是:
未找到源“node_modules/@openzeppelin/contracts/security/Pausable.sol”:允许目录之外的文件。
我的用户和工作区 Solidity 扩展的 VSCode 设置是:
"solidity.packageDefaultDependenciesContractsDirectory": "contracts",
"solidity.packageDefaultDependenciesDirectory": "node_modules"
这对应于我的项目结构
root
|_ contracts
|_ MyToken.sol
|_ node_modules
|_ @openzepplin
我按照此处的说明进行了广泛的研究,但不幸的是无法使其正常工作。