如何在 Windows 上升级 node.js?

Posted

技术标签:

【中文标题】如何在 Windows 上升级 node.js?【英文标题】:How to upgrade node.js on Windows? 【发布时间】:2012-07-26 19:20:04 【问题描述】:

我已经在 Windows 上运行了 Node.js v0.8.0。我可以运行最新的安装程序将其升级到 v0.8.4 吗?恐怕它会破坏我机器上现有的第三方模块。

【问题讨论】:

使用巧克力:Upgrading or installing node.js on Windows 【参考方案1】:

只是去

nodejs.org

安装最新的稳定版本(推荐给大多数用户)

然后运行

npm install node

现在你可以走了

您甚至可以使用命令检查 NodeJS 的版本

node --version

【讨论】:

【参考方案2】:

是的。您可以通过在https://nodejs.org/en/ 运行最新 node.js 版本的安装程序将 node.js 版本升级到最新版本。我运行安装程序将我的从 4.4.4 升级到 8.11.2。

【讨论】:

【参考方案3】:

在 Windows 上安装 node 的最佳方式是使用nvm-windows,因此您可以根据需要在版本之间快速切换。这类似于在 linux 和 max 上安装 node 的最佳方式,即使用nvm。

但是 Benjen 是对的(他怎么可能没有他所有的侦察经验),您可以安装不同版本的节点,并且您的版本会更新。您的 npm 依赖项可能必须重新安装,并且任何不受 npm 管理的扩展都可能需要重新编译,但无论您如何更改节点版本,这都是正确的。

【讨论】:

请注意,将nvm-windows 安装在没有空格的路径中很重要。所以不要安装在C:\Program Files\nvm下!见github.com/coreybutler/nvm-windows/issues/639。【参考方案4】:

只需转到nodejs site 并下载它。您可以毫不犹豫地直接安装它。如果您对早期版本有任何依赖,请检查更改日志。

【讨论】:

【参考方案5】:

目前正在升级到 4.4.*。我刚习惯从 nodejs.org 网站安装,升级后一切正常。

【讨论】:

【参考方案6】:

郑重声明,我刚刚经历了这个过程,即使你升级到另一个主要版本也没有痛苦。

我已经从 0.8 升级到 0.10,使用 .msi 包,覆盖了安装在我系统上的那个。软件包问题均已通过npm update -g 修复。像魅力一样工作。

如果它不能像魅力一样发挥作用:

npm cache clean 通常可以解决问题。一旦缓存为空,只需再次运行npm update -g

万一你真的遇到麻烦:

删除已全局安装的模块,然后重新安装它们。方法如下:

盘点您所拥有的: npm list -g --depth=0 列出所有***包,以及版本号。 npm list -g --parseable --depth=0 > npm-global-modules.txt 将它们写入 cwd 中的文件。

您自己没有安装的任何奇怪的东西可能已经被另一个模块安装(很少见,但我已经看到它发生)。从列表中删除这些模块。同时删除模块“npm”。

在编辑器中,通过将\n?[^\n]+[\\/](正则表达式)替换为单个空格来格式化命令行的输出。

(我没有让它在管道中与findstr 一起使用,因此需要往返于编辑器。当然,您也可以手动完成;)

删除所有模块。在 Windows 上,删除(或重命名)%appdata%\npm 目录。其他操作系统见Command to remove all npm modules globally?

使用npm install -g [your module list here] 重新安装模块。做之前别忘了npm cache clean

【讨论】:

还可以考虑使用where node 查找更多位置,直到命令npm 什么也没给您。然后使用 .exe 或 .msi 重新安装【参考方案7】:

除非您使用的模块依赖于 0.8.0 中存在并由 0.8.4 修复的实际错误,否则您没问题。这两个版本之间没有 API 更改(节点团队太聪明了,无法在次要版本中引入此类更改)。

【讨论】:

【参考方案8】:

是的,您只需安装最新版本。一般来说,如果您已经在使用相同的主要版本(例如版本 0.8.x),您应该不会有任何兼容性问题。如果您担心更改,您可以随时查看每个版本的更改日志(更改日志的链接位于 nodejs.org 的 node.js 下载页面上)。这应该告诉您任何重大变化(即 API 更改等)。

【讨论】:

【参考方案9】:

我没有在 Windows 上使用节点的经验,但我刚刚在我的 Mac 上升级了节点和模块,所以这只是一个一般性的答案:

如果你安装 v0.8,你可能会破坏你现有的节点模块,如果它们使用不推荐使用的功能等。问题是 npm 只在安装模块时检查你的节点版本,而不是在运行时。

为了安全起见,您需要在您的机器上找到全局 node_modules 文件夹,将其备份到某个位置,然后删除并重新安装模块。您需要对正在使用的应用程序中的 node_modules 文件夹执行相同的操作。 (假设你有 package.json 文件,重新安装这些文件应该很容易。)

实际上,我不认为我使用的任何模块实际上是不兼容的。祝你好运。

【讨论】:

如果安装的模块具有与新版本兼容的新版本,npm updatenpm install -d 不会成功吗?

以上是关于如何在 Windows 上升级 node.js?的主要内容,如果未能解决你的问题,请参考以下文章

最简单的方式在linux上升级node.js版本

在 XAMPP 1.8.3 windows 7 安装上升级 PHP

在 XAMPP 1.8.3 windows 7 安装上升级 PHP

在 XAMPP 1.8.3 windows 7 安装上升级 PHP

在 CentOS 上升级到 python 2.7 后如何为 2.7 版本安装 python-devel

使用pkg打包Node.js应用的方法步骤