错误:找不到模块'npm-registry-client'

每当我尝试安装npm-registry-client,我得到错误“ 错误:找不到模块'npm-registry-client' ”。

我试图用下面的命令来解决这个问题,但是这不起作用:

npm uninstall

npm install -g npm@latest

完整的输出是:

 user@pc ~/devel> npm install npm-registry-client --save module.js:340 throw err; ^ Error: Cannot find module 'npm-registry-client' at Function.Module._resolveFilename (module.js:338:15) at Function.Module._load (module.js:280:25) at Module.require (module.js:364:17) at require (module.js:380:17) at Object.<anonymous> (/usr/local/lib/node_modules/npm/lib/cache/caching-client.js:9:22) at Module._compile (module.js:456:26) at Object.Module._extensions..js (module.js:474:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) at Module.require (module.js:364:17) 

获得上述每个npm程序,我到目前为止尝试。 它在更新npm之后出现

这似乎是npm@3.4.1中的一个错误。 你应该尝试从npm@3.3.6直接升级到npm @ next,这将绕过npm的错误版本。 如果你现在被困在npm中,你可以通过重新安装Node.js来恢复工作的npm。

跳过这个问题的最好方法是使用官方的Node安装程序(不是Homebrew)重新安装Node,然后使用打包的npm直接升级到npm @ next。

重新安装Node.js:

 rm -rf /usr/local/lib/node_modules 

使用Ubuntu

 curl -sL https://deb.nodesource.com/setup_5.x | sudo -E bash - sudo apt-get install -y nodejs 

以root身份使用Debian

 curl -sL https://deb.nodesource.com/setup_5.x | bash - apt-get install -y nodejs 

我相信npm-registry-client是一个单独的包。

你有没有尝试npm install npm-registry-client --save

https://www.npmjs.com/package/npm-registry-client

编辑:它看起来像你的NPM只是平原打破。

也许这些步骤将有助于:

 rm -rf ./node_modules npm install 

有同样的问题。 我正在使用Ubuntu。 我已经完成的步骤:

  1. 删除文件夹/usr/lib/node_modules
  2. 使用这个帮助nodejs重新安装nodejs
  3. 使用sudo npm update -g npm更新npm到最新的稳定sudo npm update -g npm

基本上,你必须重新安装nodejs :(没有其他的帮助。PS以防万一:保存你需要的软件包的列表,只需要列出node_modules文件夹( ls -l /usr/lib/node_modules )并保存输出,所以你可以重新安装后来。

我在Windows上遇到同样的问题,发现节点卸载程序在AppData / Roaming中放置了caching。

这对我工作:

  1. 卸载节点
  2. 手动删除npm和caching
  3. 从官方Nodejs网站上的msi重新安装

我只是使用npm 3.5.0来解决这个问题

 sudo npm install -g npm@3.5.0 

当我试图从nur 3.4.1的AUR仓库的archlinux上安装primefaces编辑器时,我遇到了这个问题

在使用量angular器工具时,我也遇到了同样的问题。 我所做的是我试图将npm 3.4.1更新到最新版本(这是最新的版本),并且使用下面的命令两次执行了两次:

 npm install -g npm 

所以在npm 3.4.1出了点问题,上面的错误还在继续。

在github上添加了一些问题: https : //github.com/npm/npm/issues/10492,https : //github.com/npm/npm/issues/10394和https://github.com/npm/ npm / issues / 2528 。

解决scheme是通过删除与之关联的所有文件来重新安装Nodejs。

确保你:

  1. 卸载nodejs后重新启动机器。
  2. 删除以下文件,如果尚未完成:

     C:\Program Files (x86)\Nodejs C:\Program Files\Nodejs C:\Users\{User}\AppData\Roaming\npm (or %appdata%\npm) C:\Users\{User}\AppData\Roaming\npm-cache (or %appdata%\npm-cache) 
  3. 使用节点安装程序进行安装。

请参阅: https : //stackoverflow.com/a/20711410/3619412

我在我的Mac上有同样的问题,我的解决scheme是卸载我的node.js和npm模块按照从这个链接的步骤:

  1. / usr / local / lib并删除任何节点和node_modules
  2. / usr / local / include并删除任何节点和node_modules目录
  3. 如果您使用brew安装节点进行安装 ,那么在您的terminal中运行brew卸载节点
  4. 检查您的目录是否有本地或lib或包含文件夹,并从那里删除任何节点或node_modules
  5. / usr / local / bin并删除任何节点可执行文件

我也是这样做的:

  1. sudo rm / usr / local / bin / npm
  2. sudo rm /usr/local/share/man/man1/node.*
  3. sudo rm /usr/local/lib/dtrace/node.d
  4. sudo rm -rf〜/ .npm
  5. sudo rm -rf〜/ .node-gyp
  6. sudo rm / opt / local / bin / node
  7. sudo rm / opt / local / include / node
  8. sudo rm -rf / opt / local / lib / node_modules

然后我重新安装了一个干净的node.js版本。 在我的情况下是我从这里下载的版本5.1.0

官方的Joyent Docs已经过时了

我们需要抛弃tldr的心态,并在contintuing之前得到有关setup_x.x的最新信息 。

pipe道curlsetup_x.x到bash失败

此外, 官方Joyent Docs使用curl和pipe道bash -E ,这对我来说是失败的。 因此,我们将使用wget。

Apt – 获取最新的节点包

阅读以上段落后,您现在可以按照以下步骤操作:

 sudo apt-get remove node npm nodejs -y sudo rm -rf /usr/local/lib/node_modules sudo wget https://deb.nodesource.com/setup_0.12 sudo -E bash ./setup_0.12 sudo apt-get install nodejs -y sudo npm -g install npm@latest 

nodejs --version现在应该打印最新的一个,例如

v0.12.9

从源代码编译

如果没有什么帮助的话,就像我的情况一样,你想要去学校,从源头上编译:

 sudo apt-get remove node npm nodejs -y sudo rm -rf /usr/local/lib/node_modules mkdir ~/node && cd ~/node wget http://nodejs.org/dist/v0.12.9/node-v0.12.9.tar.gz tar -xzvf node-v0.12.9.tar.gz ./configure && make sudo make install 

我有一个非常类似的问题。 删除整个node_modules文件夹并重新安装为我工作。 希望它会帮助你。

 rm -rf node_modules npm install