如何更新Node.js和npm到下一个版本?

我刚刚安装了Node.js和npm(用于其他模块)。

如何更新Node.js和我正在使用的模块到最后的版本?

npm可以吗? 或者我必须删除并重新安装Node.js和NPM来获得下一个版本?

我遵循https://github.com/joyent/node/wiki/Installation (步骤3a)和下一个npm部分。

查看update命令的文档:

 npm update [<name> [<name> ...]] 

这个命令会把列出的所有软件包更新到最新版本(由标签config指定)。 它也将安装缺less的软件包。

另外,请参阅FAQ

我如何更新npm?

 npm install -g npm 

请注意,这个命令将删除当前版本的npm。 确保在Mac上使用sudo npm install -g npm

您还可以通过执行npm update来更新所有过时的本地程序包,而不使用任何参数,或通过执行npm update -gnpm update -g全局程序包。

有时候,npm的版本会进步,使得当前版本无法与已经安装的版本正确安装。 (考虑一下,如果update命令中有bug的话)。在这种情况下,你可以这样做:

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

要更新Node.js本身,我build议您使用nvm,Node Version Manager 。

我发现在David Walsh的博客上更新节点的方法非常简单,你可以通过安装n

 sudo npm cache clean -f sudo npm install -gn sudo n stable 

它将安装当前稳定版本的node 。 不过,我build议使用nvm

我明白这个问题是针对Linux机器的,但是如果有人正在寻找一个Windows解决scheme,只需到Node.js站点 ,点击主页上的下载button并执行安装程序即可。

值得庆幸的是,它只需点击几下'Next'button,我就可以在Windows 7机器上运行最新的0.8.15 Node.js版本。

更新npm很简单:

 npm install npm@latest -g 

如您所知,NPM目前与Node.js捆绑在一起,这意味着如果您已经安装了node您已经安装了npm 。 有几种方法可以跟踪Node.js和NPM,您需要使用以下版本pipe理器之一:

家酿

如果你在Mac上,你可以使用自制软件 。 使用brew来安装NodeJS和NPM:

 $ brew install node 

稍后您将能够使用更新

 $ brew update && brew upgrade node 

NPM也将被更新。

如果需要,您也可以switch到以前的版本,例如:

 $ brew switch node 0.10.26 

要将brew安装到Mac,

 $ ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)" 

ñ

n最有可能是rvm (Ruby版本pipe理器),可以用来pipe理和更新node/npm版本。

轻松安装Node.js版本:

 $ n 0.10.26 $ n 0.8.17 $ n 0.9.6 

使用(并安装,如果缺less)最新的正式版本:

 $ n latest 

使用/安装稳定的正式版本:

 $ n stable 

切换到您使用的以前的版本:

 $ n prev 

如果你想查看已安装节点的列表,只需从命令行运行n ,输出将如下所示:

 $ n 0.10.26 • 0.8.17 0.9.6 

点(?)表示它是当前活动的版本。 要从列表中select一个节点版本,请使用updown箭头并使用enter激活。

n软件包是在纯粹的linux shell上编写的,可以作为npm模块(包含package.json )使用,所以如果你安装了任何Node.js,你可以通过npm来安装/更新n

 $ npm install -gn 

NVM

nvm也像RVM一样,连命令名和用法都很相似。

要使用nvm下载,编译和安装Node.js的最新版本nvm

 $ nvm install 0.10 

然后你可以切换到安装的版本:

 $ nvm use 0.10 

您可以在项目根文件夹中创build包含版本号的.nvmrc文件; 然后运行以下命令切换到指定的版本:

 $ nvm use 

或者你可以运行它:

 $ nvm run 0.10 

如果您想查看哪些版本已经安装,请使用:

 $ nvm ls 

要安装nvm本身,您可以使用cURL来使用安装脚本 (需要git ):

 $ curl https://raw.github.com/creationix/nvm/master/install.sh | sh 

或者wget

 $ wget -qO- https://raw.github.com/creationix/nvm/master/install.sh | sh 

PS

我在MacOSX和Linux上使用的所有这些方法,我没有关于如何pipe理Windows上的Node.js版本的任何经验,我只能假设n (第二个)将适用于微软的操作系统(至less从cygwin )。

升级为Windows用户

Windows用户应阅读npm维基上的“故障排除”>“在Windows上升级” 。

使用PowerShell升级Windows 10(第三方编辑)

上面的故障排除# windows-upgrade -on- point指向一个github页面npm-windows-upgrade下面的行是自述文件中的引号。 我成功地从npm 2.7.4升级到npm 3.9.3使用节点v5.7.0和powershell(大概是PowerShell版本5.0.10586.122)

首先,通过从提升的PowerShell运行以下命令,确保可以在系统上执行脚本。 要以pipe理员身份运行PowerShell,请单击开始,searchPowerShell,右键单击PowerShell,然后select以pipe理员身份运行。

 Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force 

然后,安装和使用这个升级工具,运行(也从一个提升的PowerShell或cmd.exe):

 npm install --global --production npm-windows-upgrade npm-windows-upgrade 

首先检查你的NPM版本

 npm -v 

1)将NPM更新为当前版本:

查看curent NPM版本:

 npm view npm version 

更新npm到当前版本:

 npm i -g npm 

2)列出所有可用的NPM版本并进行自定义安装/更新/回滚

查看所有版本,包括“alpha”,“beta”和“rc”(候选版本)

 npm view npm versions --json 

将NPM重新安装到从版本列表中select的特定版本 – 例如5.0.3

 npm i -g npm@5.0.3 
  • 安装一个版本将自动删除当前安装的版本。

  • 对于Linux和iOS预安装sudo命令

简单的使用这个

 npm i -g npm 

这就是当新的更新/错误修正发布时,我从npm在我的控制台上提示:

在这里输入图像说明

 $ npm install -g npm stable 

为我工作从1.4.28更新到2.1.5

我刚刚在新的Windows 7机器上安装了Node.js,结果如下:

 > node -v v0.12.0 > npm -v 2.5.1 

然后我做了上面描述的程序:

 > npm install -g npm 

并升级到v2.7.3。 除了做npm -v还给了2.5.1。

我去了系统configuration面板,高级设置,环境variables。 除了全局pathvariables之外,我还看到了特定于我的用户帐户的PATHvariables。
前者指向新的npm: C:\Users\PhiLho\AppData\Roaming\npm
后者包括节点的path: C:\PrgCmdLine\nodejs\ (现在,我避免在程序文件中安装东西并衍生出来,避免path中的空格,以及嘈杂的无用保护是更加安全的…)
如果我做which npm.cmd (我安装了Unix工具…),它指向Node中的那个。

无论如何,解决方法很简单:我只是复制第一个path(到npm),在主全局pathvariables的节点path之前,现在它将获取最新版本。
<some stuff before>;C:\Users\PhiLho\AppData\Roaming\npm;C:\PrgCmdLine\nodejs\

 > npm -v 2.7.3 

请享用。 🙂

有时从http://nodejs.org/下载最新版本更简单;

特别是当所有其他选项失败时。

http://nodejs.org/ – >点击安装 – >你将有最新的节点和NPM

简单!

刚刚听取了关于nodeup的最新一集npm团队的采访,他们build议不要使用更新从1.x2.x的更新。 相反,使用: npm install npm -g

对于Linux,OSX等。

安装最新版本的NPM

npm install -g npm@latest

或者安装最新版本

npm install -g npm@next

附加:检查你的npm版本

npm -v

如果你在Windows机器上,我build议去npm网站

安装npm => sudo apt-get install npm

安装n => sudo npm install n -g

最新版本的节点 => sudo n latest

您可以使用特定版本的节点

列出可用的节点版本 => n ls

安装特定版本 => sudo n 4.5.0

我最近偶然发现了这篇文章: http : //martineau.tv/blog/2013/12/more-efficient-grunt-workflows/和作者提到$ npm-check-updates -u && npm install来更新所有的依赖关系。

这是一个小题目,但我在这里结束了类似的search,所以认为这是值得的份额。

只是这个代码

 npm install update 

要更新npm:

 npm install npm@{version} -g 

更新npm到最新版本:

 npm install npm@latest -g 

并检查版本:

 npm -v 

更新节点js:

 sudo npm cache clean -f sudo npm install -gn sudo n stable 

去检查 :

 node -v 

对于Cygwin用户:

Cygwin中安装n (节点版本pipe理器)不起作用,取而代之的是更新节点:

 wget https://nodejs.org/download/release/latest/win-x64/node.exe -OutFile 'C:\pathto\nodejs\node.exe' # Updating npm npm i -g npm 

是的,你需要先安装wget

另外如果你想更新到一个特定的版本,请按照下列步骤操作:

 sudo npm cache clean -f sudo npm install -gn sudo n <specific version> 

使用npm中的n模块来升级节点。 n是安装或更新给定node.js版本的节点助手程序包。

 sudo npm cache clean -f sudo npm install -gn sudo n stable sudo ln -sf /usr/local/n/versions/node/<VERSION>/bin/node /usr/bin/nodejs 

请注意,nodejs的默认安装位于/ usr / bin / nodejs而不是/ usr / bin /节点

要升级到最新版本(而不是当前稳定版本),可以使用

sudo n latest

撤销:

 sudo apt-get install --reinstall nodejs-legacy # fix /usr/bin/node sudo n rm 6.0.0 # replace number with version of Node that was installed sudo npm uninstall -gn 

如果你得到下面的错误bash: /usr/bin/node: No such file or directory那么你input的path

 sudo ln -sf /usr/local/n/versions/node/<VERSION>/bin/node /usr/bin/nodejs 

如果错了。 因此请确保检查更新no​​dejs是否已安装在上述path中,并且input的版本是正确的。

我会强烈build议不要生产实例上这样做。 它可以认真地弄脏你的全球NPM包和你的能力,安装新的。

你应该看到这个博客nodejs与包pipe理器安装

在执行此命令之前。 你显示运行sudo apt-get update ,确保结果是正在读取软件包列表…完成没有错误

一步一步(Debian):sudo apt-get update install 6_x curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash – sudo apt-get install -y nodejs

安装7_x curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash – sudo apt-get install -y nodejs

我开发了一个非常简单而快速的软件包来做这种更新, atualiza可以处理全球和项目的软件包。 在以后的版本中,你可以select最新的版本或者更大的版本来匹配你当前的package.json的规则。 对于全球包,你没有规则,所以atualiza会永远升级到最新。

对于Windows用户和更新节点,我仍然会推荐nodist> https://github.com/marcelklehr/nodist

我个人使用nvm (节点版本pipe理器)这是一个简单的bash脚本来pipe理多个活动node.js版本,并且可以同时为不同的用户configuration多个版本的节点和全局模块。

你可以查看这个链接: nvm

还有一个windows版本的nvm-windows

如果您使用Windows, 请转到https://nodejs.org/en/download/ ,下载最新的.exe.msi文件并安装以覆盖旧版本

如果您使用的是Ubuntu或Linux:先卸载node.js然后重新安装,例如使用Ubuntu():

 sudo apt-get remove nodejs # assume node.js 8 is latest version curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - sudo apt-get install nodejs node -v npm -v 

删除项目文件夹中的node_modulesnpm install ,以确保您的应用程序在新nodenpm版本上运行良好。

在控制台上运行下面的脚本:

 sudo npm i -gn sudo n stable sudo npm update -g npm 

这只适用于Linux和MAC

如果你不想更新到最新版本。 做这个命令:

npm install npm@4.2.0 -g

用你想要的任何版本replace4.2.0。 以下是2017年10月3日前发布的所有版本: https : //nodejs.org/en/download/releases/