我一直在使用NVM安装的的NodeJS最新版本为我工作的节点。 它适用于安装不同版本以及它们之间的切换完全罚款。 它还安装的每个地方... / bin文件夹中的最新版本NPM与节点二进制文件一起。 然而,似乎没有被任何方式进行切换,我使用(或至少我不出来)的NPM的版本。
我能想到自己的唯一的解决办法是删除了二进制文件,它的默认为(这是我第一次安装了NVM节点已安装的NPM),并在其位置将最新的NPM二进制文件。 但是,如果有什么更好的方式去这样做,我不知道。
我一直在使用NVM安装的的NodeJS最新版本为我工作的节点。 它适用于安装不同版本以及它们之间的切换完全罚款。 它还安装的每个地方... / bin文件夹中的最新版本NPM与节点二进制文件一起。 然而,似乎没有被任何方式进行切换,我使用(或至少我不出来)的NPM的版本。
我能想到自己的唯一的解决办法是删除了二进制文件,它的默认为(这是我第一次安装了NVM节点已安装的NPM),并在其位置将最新的NPM二进制文件。 但是,如果有什么更好的方式去这样做,我不知道。
编辑:几年以来,这一问题被首次回答,在指出一个新的答案 ,现在有这个命令:
NVM现在有一个命令来更新NPM。 这是
nvm install-latest-npm
或者nvm install --latest-npm
。
nvm install-latest-npm
:尝试升级到最新的工作npm
在当前节点版本
nvm install --latest-npm
:安装,尝试升级到最新的工作NPM给定的节点版本后
下面是正确的回答这个问题以前版本。
在三年后,这一问题被首先问,好像答案是简单得多了。 只要更新NVM安装的版本,它生活在~/.nvm/versions/node/[your-version]/lib/node_modules/npm
。
我刚安装节点4.2.2,它带有NPM 2.14.7,但我想用NPM 3.所以我做:
cd ~/.nvm/versions/node/v4.2.2/lib
npm install npm
简单!
是的,这应该适用于任何模块,不只是故宫,你想成为“全球性”为节点的特定版本。
EDIT 1:在最新版本, npm -g
是智能并安装模块插入到路径的上方,而不是系统全局路径。
感谢@philraj在评论指出了这一点。
NVM不处理NPM。
所以,如果你想安装节点0.4.x(其中许多包仍然依靠),并使用NPM,你仍然可以使用NPM 1.0.x.
安装节点0.6.x(随NPM 1.1.x版本),并与故宫安装NVM:
npm install nvm
. ~/nvm/nvm.sh
安装与NVM节点0.4.x:
nvm install v0.4.12
nvm use v0.4.12
使用install.sh(注意安装NPM -L
参数去遵循任何重定向):
curl -L https://npmjs.org/install.sh | sh
这将检测节点0.4.12,并在〜/ NVM / v0.4.12 / lib中安装NPM 1.0.106 / node_modules文件夹,并创建符号链接NVM
~/nvm/v0.4.12/bin/npm -> ../lib/node_modules/npm/bin/npm-cli.js
如果您尝试运行NPM,它仍然会给出一个错误,但如果你做的nvm use v0.4.12
再次,它现在应该工作。
NVM现在有一个命令来更新NPM。 这是nvm install-latest-npm
或npm install --latest-npm
。
npm install npm@x.x.x -g
npm install npm@5.4.0 -g
基于Linux的更改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
我在Windows上,我不能得到任何的这些东西的工作。 我一直得到有关文件的方式是错误的。 这虽然工作:
cd %APPDATA%\nvm\v8.10.0 # or whatever version you're using
mv npm npm-old
mv npm.cmd npm-old.cmd
cd node_modules\
mv npm npm-old
cd npm-old\bin
node npm-cli.js i -g npm@latest
cd %APPDATA%\nvm\v8.10.0 # or whatever version you're using
rm npm-old
rm npm-old.cmd
cd node_modules\
rm -rf npm-old
只听轰的一声,我又回到企业。
通过查看www.npmjs.com/install.sh我发现有通过设置环境变量来安装一个特定版本的方法
export npm_install="2.14.14"
则如以npmjs.com说明运行下载脚本:
curl -L https://www.npmjs.com/install.sh | sh
如果省略设置npm_install变量,那么它将安装它们标记为最新版本
在Windows中,运行终端作为管理员(如果有权限问题,因为我有)。 然后,使用一个特定节点的版本(比如7.8.0)由
nvm use 7.8.0
然后更新您的NPM所需的特定版本
npm install -g npm@5.0.3
什么npm i -g npm
? 你有没有尝试运行这个呢?
稍有不同的上述指示,为我工作。 (MacOS的塞拉10.12.6)
npm install -g npm@3.10.10
rm /usr/local/bin/npm
ln -s ~/.npm-packages/bin/npm /usr/local/bin/npm
npm --version
我安装后出现同样的问题nvm-windows
上现有节点安装的顶部。 解决方案只是按照指示:
你也应该删除现有的NPM安装位置(例如“C:\用户\应用程序数据\漫游\ NPM”),以使NVM安装位置会被正确使用代替。
安装和升级