npm ERR! Cannot find module ‘libnpmexec‘

通过nodist升级npm之后,执行npm init -y命令报错:

npm ERR! code MODULE_NOT_FOUND
npm ERR! Cannot find module 'libnpmexec'
npm ERR! Require stack:
npm ERR! - D:\Program Files (x86)\Nodist\npmv\8.15.0\lib\commands\init.js
npm ERR! - D:\Program Files (x86)\Nodist\npmv\8.15.0\lib\npm.js
npm ERR! - D:\Program Files (x86)\Nodist\npmv\8.15.0\lib\cli.js
npm ERR! - D:\Program Files (x86)\Nodist\npmv\8.15.0\bin\npm-cli.js

折腾好久才,打开https://github.com/npm/cli/tree/v8.15.0 才发现原来新版的node_modules目录下,libnpmexec 不再是一个文件夹,而已经变成了一个链接,指向../workspaces/libnpmexec。

这些链接在linux下是OK的,但通过nodist在windows下安装时,会被直接忽略掉,所以才会报上面的错误。

npm ERR! Cannot find module ‘libnpmexec‘_第1张图片

 

npm ERR! Cannot find module ‘libnpmexec‘_第2张图片

于是我把workspaces下的文件夹全部拷到了node_modules目录,结果又报一个错:

D:\vsProjects\myvue>npm init -y
npm ERR! code MODULE_NOT_FOUND
npm ERR! Cannot find module '@npmcli/arborist'
npm ERR! Require stack:
npm ERR! - D:\Program Files (x86)\Nodist\npmv\8.15.0\node_modules\libnpmexec\lib\index.js
npm ERR! - D:\Program Files (x86)\Nodist\npmv\8.15.0\lib\commands\init.js
npm ERR! - D:\Program Files (x86)\Nodist\npmv\8.15.0\lib\npm.js
npm ERR! - D:\Program Files (x86)\Nodist\npmv\8.15.0\lib\cli.js
npm ERR! - D:\Program Files (x86)\Nodist\npmv\8.15.0\bin\npm-cli.js

原来workspaces下的arborist是一个特例,不能直接拷到node_modules目录下,而是要拷到node_modules/@npmcli下

npm ERR! Cannot find module ‘libnpmexec‘_第3张图片

 至此,问题解决。

 解决办法总结:

1、把workspaces下的除arborist之外的文件夹全部拷到node_modules目录;

2、workspaces下的arborist拷到node_modules/@npmcli目录;

npm ERR! Cannot find module ‘libnpmexec‘_第4张图片

 

你可能感兴趣的:(npm,前端,nodejs)