You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac Monterey下VS Code运行Solidity报MODULE_NOT_FOUND错误如何解决

问题背景
  • 操作系统:Mac Monterey
  • 运行环境:VS Code
  • 触发操作:尝试运行Solidity代码时抛出错误,无法定位故障点
  • 报错日志:
node version
node:internal/modules/cjs/loader:942
throw err;
^

Error: Cannot find module '/Users/h/U_Block Developer/star/version'
    at Module._resolveFilename (node:internal/modules/cjs/loader:939:15)
    at Module._load (node:internal/modules/cjs/loader:780:27)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:77:12)
    at node:internal/main/run_main_module:17:47 {
  code: 'MODULE_NOT_FOUND',
  requireStack: []
}
故障原因

报错本质是Node.js找不到指定要执行的模块文件,直接诱因是命令输入错误:输入node version试图查询Node版本时,Node会把version识别为待执行的脚本文件路径,在当前工作目录/Users/h/U_Block Developer/star/下查找名为version的文件,找不到就抛出这个MODULE_NOT_FOUND错误。
另外项目存放在带空格的路径U_Block Developer下,后续执行Solidity编译、部署脚本时如果不对路径做转义或加引号,也容易触发同类路径解析错误。

解决步骤
  • 先验证Node环境是否正常:在VS Code终端输入正确的版本查询命令node -v(或node --version),如果正常返回版本号,说明Node安装无异常。
  • 明确Solidity的运行逻辑:Node本身无法直接执行.sol后缀的Solidity代码,如果用Hardhat、Truffle等开发框架,需要先在项目根目录执行npm install安装全部依赖,再使用框架对应的编译、运行命令;如果依赖VS Code的Solidity插件运行代码,检查插件配置中solc编译器路径、Node路径是否指向实际存在的文件,不要配置无效路径。
  • 规避路径空格问题:建议将带空格的文件夹名U_Block Developer重命名为无空格的U_Block_Developer,从根源避免路径解析故障。

内容的提问来源于stack exchange,提问作者Hitesh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.01 02:48:33