错误:找不到模块'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。 我已经完成的步骤:
- 删除文件夹
/usr/lib/node_modules
- 使用这个帮助nodejs重新安装nodejs
- 使用
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。
这对我工作:
- 卸载节点
- 手动删除npm和caching
- 从官方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。
确保你:
- 卸载nodejs后重新启动机器。
-
删除以下文件,如果尚未完成:
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)
-
使用节点安装程序进行安装。
请参阅: https : //stackoverflow.com/a/20711410/3619412
我在我的Mac上有同样的问题,我的解决scheme是卸载我的node.js和npm模块按照从这个链接的步骤:
- 去/ usr / local / lib并删除任何节点和node_modules
- 去/ usr / local / include并删除任何节点和node_modules目录
- 如果您使用brew安装节点进行安装 ,那么在您的terminal中运行brew卸载节点
- 检查您的主目录是否有本地或lib或包含文件夹,并从那里删除任何节点或node_modules
- 去/ usr / local / bin并删除任何节点可执行文件
我也是这样做的:
- sudo rm / usr / local / bin / npm
- sudo rm /usr/local/share/man/man1/node.*
- sudo rm /usr/local/lib/dtrace/node.d
- sudo rm -rf〜/ .npm
- sudo rm -rf〜/ .node-gyp
- sudo rm / opt / local / bin / node
- sudo rm / opt / local / include / node
- 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