安装@Forge/cli时出现spawn ts-node ENOENT错误如何解决
报错原因
Error: spawn ts-node ENOENT 本质是系统无法找到 ts-node 可执行文件触发的运行时错误,ts-node 是TypeScript代码的直接执行环境,属于Forge CLI的运行依赖项,常见触发原因如下:
- 你当前使用的Node.js版本不符合Forge CLI要求,官方要求Forge CLI需运行在Node.js 14.x或16.x LTS版本,你使用的v12.22.6版本过低,会导致依赖安装逻辑异常
- 全局npm包的安装目录未被正确纳入系统PATH环境变量,你通过nvm管理Node.js的场景下,可能存在nvm的PATH配置未生效的问题,导致系统无法识别全局安装的npm包命令
- 之前的安装过程中出现文件丢失、缓存异常问题,导致ts-node依赖未被正确安装
解决步骤
- 首先升级Node.js到符合要求的版本,通过nvm操作的话执行以下命令:
执行完成后运行nvm install 16 nvm alias default 16node -v确认版本已切换为16.x系列 - 全局预安装ts-node和typescript依赖:
npm install -g ts-node typescript - 验证npm全局目录是否在系统PATH中,先执行
npm bin -g获取全局npm包的可执行文件目录,再执行echo $PATH检查输出内容是否包含上述目录,如果不存在则将export PATH="$PATH:$(npm bin -g)"写入你的shell配置文件(~/.zshrc 或 ~/.bash_profile,根据你当前使用的shell决定),写入后执行source ~/.zshrc(或对应配置文件)让配置生效 - 清理之前的安装残留并重新安装Forge CLI:
npm uninstall -g @forge/cli npm cache clean --force npm install -g @forge/cli - 验证安装结果,执行
forge --version,正常输出版本号即代表安装成功
内容的提问来源于stack exchange,提问作者Sydney C.
相关产品推荐
相关产品推荐

