使用VSCode引用OpenZeppelin库编写solidity合约时报错解决办法

03-07 1149阅读

文章目录

  • 问题描述
  • 解决办法
    • 对插件进行设置
    • 降低solidity插件版本

      本文针对的 调试 Solidity 代码的插件为

      使用VSCode引用OpenZeppelin库编写solidity合约时报错解决办法

      问题描述

      最近在使用 VS Code 编写 solidity 合约的时候,引用 OpenZeppelin 库之后出现了如下错误:

      使用VSCode引用OpenZeppelin库编写solidity合约时报错解决办法

      报错为:Expected string literal (path), "*" or alias list.

      或者还有可能会出现这样的错误:

      使用VSCode引用OpenZeppelin库编写solidity合约时报错解决办法

      报错为:Source "@openzeppelin/contracts/token/ERC721/ERC721.sol" not found: File import callback not supported

      解决办法

      目前有两种解决办法:

      对插件进行设置

      在 VSCode 中按快捷键 Ctrl + Shift + P ,在弹出的对话框中输入 settings.json,选择打开用户设置使用VSCode引用OpenZeppelin库编写solidity合约时报错解决办法

      在最后一行插入

      "solidity.remappingsUnix": ["@openzeppelin/=node_modules/@openzeppelin/"],
      "solidity.remappings": ["@openzeppelin/=node_modules/@openzeppelin/"],
      

      使用VSCode引用OpenZeppelin库编写solidity合约时报错解决办法

      保存、重启即可

      降低solidity插件版本

      如果经过上述设置之后仍不能解决报错的问题,就需要手动降低 Solidity 插件的版本了,目前笔者尝试的不报错的版本为 0.0.135 ,下载链接放在这里:solidity VSCode插件0.0.135

      下载该文件之后,在 VSCode 中按照以下顺序选择从 VSIX 安装插件并选择刚才下载的的插件

      使用VSCode引用OpenZeppelin库编写solidity合约时报错解决办法

      安装成功之后点击按钮重新加载 VSCode 即可解决报错问题

      使用VSCode引用OpenZeppelin库编写solidity合约时报错解决办法

VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]