如何重新安装损坏的 npm



我刚刚安装了节点v9.11.1当我尝试使用 npm 时,我不断收到以下错误:

npm WARN npm npm does not support Node.js v9.11.1
npm WARN npm You should probably upgrade to a newer version of node as we
npm WARN npm can't make any promises that npm will work with this version.
npm WARN npm Supported releases of Node.js are the latest release of 4, 6, 7, 8.
npm WARN npm You can find the latest version at https://nodejs.org/

我试图做npm i -g npm但它无法自行更新,它只是不断抛出上面的相同错误。

当我运行npm -v时,它说5.5.1似乎最新版本目前正在5.8.0

我尝试删除文件夹并在节点安装程序上运行修复功能.js但它没有替换模块。

删除全局 NPM 文件夹

https://stackoverflow.com/a/5926706/349659

npm list -g

对于 Windows,这很可能是:

%AppData%npmnode_modules

您可以将其粘贴到文件夹的地址栏中,它会将您带到那里。

一旦删除名为npm的文件夹。

下载最新版本的 NPM

https://github.com/npm/cli/releases/latest

获取 zip 并将其解压缩到您刚刚从中删除 npm 文件夹的node_modules文件夹中。

将从 zip 中提取的文件夹重命名为npm

如果收到有关文件路径或名称太长的任何警告,请跳过警告。

更新祝你好运

现在您应该能够运行npm i -g npm来更新/重新安装 npm,而不会出现任何警告。

如果您在 Windows 中遇到有关路径或文件名太长的错误,我发现此步骤尤其重要。

您可能会收到以下错误。如果您确实删除或移动了它列出的文件,您应该能够成功运行npm i -g npm

npm ERR! Refusing to delete C:Program Filesnodejsnpx.cmd: is outside C:Program Filesnodejsnode_modulesnpm and not a link
npm ERR! File exists: C:Program Filesnodejsnpx.cmd
npm ERR! Move it away, and try again.
npm ERR! Refusing to delete C:Program Filesnodejsnpm.cmd: is outside C:Program Filesnodejsnode_modulesnpm and not a link
npm ERR! File exists: C:Program Filesnodejsnpm.cmd
npm ERR! Move it away, and try again.

不知何故,我的 npm 安装损坏了,所以用自己重新安装它(例如npm install -g npm或类似)将不起作用。

npm 自述文件实际上定义了使用此curl命令再次安装 npm 的非常简单的方法:

curl -qL https://www.npmjs.com/install.sh | sudo sh

此安装脚本实际上会删除任何现有的 npm 安装,然后为您安装最新版本。

试试这个:

npm install npm@latest -g

更多信息在这里。

尝试此命令重新安装 npm

npm install -g npm-reinstall

如果您使用的是 Linux 发行版,请添加 sudo

sudo npm install -g npm-reinstall

由于我都是关于单行的,让我为你做这件事非常容易。

在任何路径上打开你的GitBash或Cygwin(我认为GitBash和Cygwin都在其存储中存储Windows预定义的环境变量和路径,所以这变得很容易),并从那里运行这个单行:

rm -rf $APPDATA/npm; npm install -g npm@latest; npm list -g;

rm -rf $APPDATA/npm;- 这将完全清除旧的全局npm文件夹。

npm install -g npm@latest;- 这将安装最新版本的 NPM 可用(因此在此;)之后无需安装次要版本)。

npm list -g;- 这将向您显示您的 NPM 全球配置文件的详细信息。

如果有人坚持在PowerShell中这样做,那么这就是方法:

$env:Path += ";C:Program Filesnodejs"
cmd /c 'del /s /q /f %APPDATA%npm && rd /s /q %APPDATA%npm'; npm install -g npm@latest; npm list -g;

$env:Path += ";C:Program Filesnodejs"- 确保将Nodejs添加到Path以便至少运行 PowerShell 会话。(注意:只要没有错误,请仅运行一次。

cmd /c 'del /s /q /f %APPDATA%npm && rd /s /q %APPDATA%npm';- 确保通过度量完成完全清除%APPDATA%npm文件夹的必要步骤。

  1. 导航到并删除 %AppData%pmode_modulespm

  2. 使用 npm
  3. cli 存储库的 curl 脚本自动清理以前的 npm 安装并重新安装最新版本:

curl -qL https://www.npmjs.com/install.sh | sh

存储库:npm GitHub 存储库

对我来说,即使删除npm文件夹或重新安装Node也没有帮助。将 Nodejs 和 npm 更新到我的 CentOS 6 的最新版本(Node 10.19、npm 6.14.3)后,我在 Node 很好的时候遇到了 npm 的不断库错误。

有效的方法 -n节点版本管理器。使用此命令,我可以反转我的 npm 版本:n -p 6.13链接

最新更新