如何修复:npm ERR!找不到模块 'read-package-json'

How to fix: npm ERR! Cannot find module 'read-package-json'

我犯了一个可怕的错误 运行 这个命令:

sudo npm update -g npm

因此 npm 变得毫无用处,任何安装任何东西的尝试都会导致以下错误:

npm ERR! Darwin 15.0.0
npm ERR! argv "/Users/michaelb/.nvm/versions/node/v5.3.0/bin/node" "/Users/michaelb/.nvm/versions/node/v5.3.0/bin/npm" "install"
npm ERR! node v5.3.0
npm ERR! npm  v3.7.4
npm ERR! code MODULE_NOT_FOUND

npm ERR! Cannot find module 'read-package-json'
npm ERR! 
npm ERR! If you need help, you may report this error at:
npm ERR!     <https://github.com/npm/npm/issues>

谁能推测出问题所在以及如何解决?

我正在使用 OS X El Capitan (10.11)

node -v
v5.3.0

npm -v
3.7.4

nvm ls
->       v5.3.0
default -> stable (-> v5.3.0)
node -> stable (-> v5.3.0) (default)
stable -> 5.3 (-> v5.3.0) (default)
iojs -> N/A (default)

刚刚在他们的 GitHub 期中发现

Reference:

Solution: Reinstall npm

在我的例子中,我的节点是通过 .pkg 文件安装的。而且我重新安装 npm 没有用。 我通过完全卸载节点解决了这个问题,遵循这个要点: https://gist.github.com/TonyMtz/d75101d9bdf764c890ef

所有 npm 问题如:


  • 错误:找不到模块 'interpret'
  • 错误:找不到模块 'read-pkg-up'
  • 错误:找不到模块 'lru-cache'

解决方案


  1. 删除文件:

package-lock.json

  1. 运行 在终端

$npm upgrade