如何解决npm安装kline成功后执行node kline命令报模块不存在错误
执行node kline报错MODULE_NOT_FOUND的排查方案
- 安装范围不匹配:默认执行
npm install kline是局部安装,包会被下载到当前命令执行目录的node_modules文件夹下,而直接运行node kline时Node会优先从全局Node安装目录(即报错中的C:\Program Files\nodejs\)检索模块,因此找不到目标包。
解决方式:如果要全局调用,安装时添加全局参数执行npm install kline -g;如果要使用局部安装的包,执行命令时指定相对路径node ./node_modules/kline/[对应入口文件路径]即可。 - 包入口配置问题:即使完成全局安装,如果
kline包本身没有配置可执行的bin入口,也无法直接通过node kline调用。你可以打开kline包目录下的package.json文件,查看main字段标注的入口文件路径,再通过node [入口文件的绝对/相对路径]执行。 - 执行目录错误:如果使用局部安装的
kline,执行node kline的目录和安装kline时的工作目录不一致,也会触发找不到模块的报错。你可以切换到执行npm install kline的目录下再运行命令,或者手动配置NODE_PATH环境变量指向你的全局npm模块存放目录。 - 包使用场景不匹配:部分npm包仅支持前端项目引入使用,没有提供Node环境下可直接执行的运行入口,你可以先确认
kline包的适用场景是否支持Node端直接运行。
内容的提问来源于stack exchange,提问作者Михаил Петрухнов
相关产品推荐
相关产品推荐

