在“npm update -g”之后错误“找不到模块'npmlog'”
我有NVM 0.30.1,并用它在Fedora 22上安装node.js v5.4.0(与NPM 3.5.4)。当我运行npm update -g
,我收到以下警告:
npm WARN EBUNDLEOVERRIDE Replacing bundled npm > init-package-json with new installed version npm WARN EBUNDLEOVERRIDE Replacing bundled npm > node-gyp with new installed version npm WARN EBUNDLEOVERRIDE Replacing bundled npm > npm-install-checks with new installed version npm WARN EBUNDLEOVERRIDE Replacing bundled npm > npmlog with new installed version npm WARN EBUNDLEOVERRIDE Replacing bundled npm > read-package-json with new installed version
之后,当我运行npm时,我得到这个错误:
module.js:328 throw err; ^ Error: Cannot find module 'npmlog' at Function.Module._resolveFilename (module.js:326:15) at Function.Module._load (module.js:277:25) at Module.require (module.js:354:17) at require (internal/module.js:12:17) at /home/peflorencio/.nvm/versions/node/v5.4.0/lib/node_modules/npm/bin/npm-cli.js:20:13 at Object.<anonymous> (/home/peflorencio/.nvm/versions/node/v5.4.0/lib/node_modules/npm/bin/npm-cli.js:76:3) at Module._compile (module.js:398:26) at Object.Module._extensions..js (module.js:405:10) at Module.load (module.js:344:32) at Function.Module._load (module.js:301:12)
有谁知道它是什么以及如何解决它?
谢谢
它看起来像npm update -g
不能更新npm到最新版本。 我通过手动更新npm安装来解决问题。
- 安装/重新安装节点以获取捆绑的npm
- 运行
npm install -g npm@3.5.4
来更新全局的npm安装 - 现在
npm update -g
应该工作
感谢您的答案。 这是一个bug ,它已经在Node v5.4.1中修复了。 现在它照常工作。
这对我来说是固定的
sudo rm -rf /usr/local/lib/node_modules/
然后重新安装节点(使用npm)。
init-package-json,node-gyp,npm-install-checks,npmlog,read-package-json没有正确安装。 不知道为什么。
没有find问题的根本原因,但我现在使用hacky的方式来安装上面的包:
- 回滚到npm没有更新的前一个节点版本。 例如,
nvm use iojs
-
cd
到npm安装的地方,例如cd /home/peflorencio/.nvm/versions/node/v5.4.0/lib/node_modules/npm
然后重新安装这些软件包,如rm -rf node_modules/init-package-json && npm install init-package-json
等
我在Windows 10 PC中遇到了同样的问题。 查看解决scheme后,因为我无法find我正面临的问题的确切解决scheme无法find模块'npmlog'我只是卸载节点js,然后删除'npm'和'npm-cache'在“C: \用户\ YourPCName \应用程序数据\漫游”
然后,我从Node JS网站下载了最新版本的节点
并且,安装节点js
之后,我检查了环境variables中的path。
最后运行命令提示符“以pipe理员身份运行”和npm install npm -g
检查您的版本将显示最新版本。 'npm -v'
我得到了最新版本 – v3.10.9
尝试这个。 这应该工作。
如果用linux的人面临这个问题,这里是解决办法:
截至本文的发布date,与Nodejs打包在一起的NPM版本不起作用。 如果你安装了这个包,运行
sudo rm -rf /usr/local/bin/npm sudo apt-get install node sudo mv /usr/bin/npm /usr/local/bin/npm
新版本应该是3.10.8,旧的错误消失了