我一直在使用NVM为我的Node.js工作安装最新版本的Node.js。它完全可以安装不同的版本并在它们之间切换。它还在每个本地…安装最新版本的NPM。/bin文件夹和Node.js二进制文件。然而,似乎没有办法切换我正在使用的NPM版本(或者至少我不能弄清楚)。
我自己能想到的唯一解决方案是删除默认的二进制文件(这是我第一次用NVM安装节点时安装的NPM),并在其位置放置最新的NPM二进制文件。然而,有没有更好的方法来做到这一点呢?
我一直在使用NVM为我的Node.js工作安装最新版本的Node.js。它完全可以安装不同的版本并在它们之间切换。它还在每个本地…安装最新版本的NPM。/bin文件夹和Node.js二进制文件。然而,似乎没有办法切换我正在使用的NPM版本(或者至少我不能弄清楚)。
我自己能想到的唯一解决方案是删除默认的二进制文件(这是我第一次用NVM安装节点时安装的NPM),并在其位置放置最新的NPM二进制文件。然而,有没有更好的方法来做到这一点呢?
当前回答
我们可以用n很容易地解出来。
安装n:
npm install -g n
切换版本:
n latest
切换到特定版本:
n 10.16.0
其他回答
解决:
我使用nvm for Windows安装了最新版本的node 也安装了最新版本的npm。 我从node_modules文件夹中删除了npm目录并替换 它使用最新节点安装的新版本。
这让我可以在之前的node版本中使用最新版本的npm,解决了我遇到的问题。
通过查看www.npmjs.com/install.sh,我发现有一种通过设置环境变量来安装特定版本的方法。
出口npm_install = " 2.14.14 "
然后运行npmjs.com上描述的下载脚本:
curl -L https://www.npmjs.com/install.sh | sh
如果忽略设置npm_install变量,那么它将安装标记为最新的版本。
与之前的指令略有不同。它适用于我(macOS v10.12.6 (Sierra))。
npm install -g npm@3.10.10
rm /usr/local/bin/npm
ln -s ~/.npm-packages/bin/npm /usr/local/bin/npm
npm --version
在现有的Node.js安装上安装nvm-windows后,我也遇到了同样的问题。解决办法就是按照说明去做:
你还应该删除现有的npm安装位置(例如: “C:\Users\AppData\Roaming\npm”),以便nvm安装位置 将被正确地使用。
安装与升级
在基于linux的操作系统上更改npm版本还不是一个简单的单命令过程。我已经做了以下操作来切换回较旧版本的npm。这应该可以让任何版本的npm工作。
首先安装你想要使用的npm版本:
sudo npm install -g npm@X.X.X
删除/usr/local/bin/中的符号链接:
sudo rm /usr/local/bin/npm
使用你想要的npm版本重新创建符号链接:
sudo ln -s /usr/bin/npm@X.X.X /usr/local/bin/npm