NodeJS 如何重新安装损坏的npm

ttygqcqt  于 2023-03-08  发布在  Node.js
关注(0)|答案(7)|浏览(368)

我刚安装了节点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
我尝试删除文件夹并在node.js安装程序上运行修复功能,但它没有替换模块。

kpbpu008

kpbpu0081#

删除全局NPM文件夹

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

npm list -g

对于Windows,这很可能是:
%AppData%\npm\node_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 Files\nodejs\npx.cmd: is outside C:\Program Files\nodejs\node_modules\npm and not a link
npm ERR! File exists: C:\Program Files\nodejs\npx.cmd
npm ERR! Move it away, and try again.

npm ERR! Refusing to delete C:\Program Files\nodejs\npm.cmd: is outside C:\Program Files\nodejs\node_modules\npm and not a link
npm ERR! File exists: C:\Program Files\nodejs\npm.cmd
npm ERR! Move it away, and try again.
nkoocmlb

nkoocmlb2#

不知何故,我有一个坏的安装npm,所以重新安装它与本身(eidogg. npm install -g npm或类似)将无法工作。
npm自述文件实际上定义了一种非常简单的方法,可以使用curl命令重新安装npm:

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

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

cxfofazt

cxfofazt3#

试试这个:

npm install npm@latest -g

更多信息here

0aydgbwb

0aydgbwb4#

尝试使用此命令重新安装npm

npm install -g npm-reinstall

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

sudo npm install -g npm-reinstall
ulydmbyx

ulydmbyx5#

既然我只讲一句俏皮话,那就让我把这件事简单地告诉你吧。
打开你的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 Files\nodejs\"
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 Files\nodejs\"-确保将Nodejs添加到Path中,以便至少运行PowerShell会话。(**警告:**只要没有错误,请仅运行一次。)
cmd /c 'del /s /q /f %APPDATA%\npm && rd /s /q %APPDATA%\npm';-确保适当完成完全清除%APPDATA%\npm文件夹的必要步骤。

o4hqfura

o4hqfura6#

对我来说,即使删除npm文件夹或重新安装节点没有帮助。在更新Nodejs和npm到我的CentOS 6的最新版本(节点10.19,npm 6.14.3)后,我得到了npm的恒定库错误,而节点是好的。
n节点版本管理器使用这个命令我可以反转我的npm版本:n -p 6.13链路

06odsfpq

06odsfpq7#

1.导航到并删除%AppData%\npm\节点模块\npm
1.使用npm cli repo的curl脚本自动清除以前的npm安装并重新安装最新版本:
curl -qL https://www.npmjs.com/install.sh | sh
回购协议:npm github repo

相关问题