我刚刚安装了Node.js和NPM(节点包管理器)

我安装了NPM以访问其他Node.js模块。

在我安装Node.js和NPM之后,我注意到这两个版本都不可用。

我想知道:如何将Node.js、NPM和我的Node.js模块升级到最新版本?

我需要卸载Node.js和NPM并重新安装最新版本吗?

这是到目前为止我所做尝试的链接。此链接是npm的一部分。


当前回答

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

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

注意,nodejs的默认安装在/usr/bin/nodejs中,而不是/usr/bin/node中

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

sudo n最新

要撤消:

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 -g n

如果您收到以下错误bash:/usr/bin/node:没有这样的文件或目录,那么您在

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

如果错误。因此,请确保检查更新nodejs是否已安装在上述路径上,并且输入的版本是否正确。

我强烈建议不要在生产实例上这样做。它会严重扰乱你的全球npm软件包和你安装新软件包的能力。

其他回答

我刚刚在一台新的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。

我进入系统配置面板,高级设置,环境变量。除了全局PATH变量之外,我还看到了一个特定于用户帐户的PATH变量。前者指向新的npm:C:\Users\PhiLho\AppData\Roaming\npm后者包括到节点的路径:C:\PrgCmdLine\nodejs\(现在,我避免在程序文件和派生文件中安装东西。避免路径中的空格和嘈杂的无用保护是明智的…)如果我执行哪个npm.cmd(我安装了Unix实用程序…),它将指向Node中的一个。

无论如何,修复方法很简单:我只是在主全局路径变量中的节点路径之前复制了第一个路径(到npm),现在它获取了最新版本。<以前的一些东西>;C: \Users\PhiLho\AppData\Roaming\npm;C: \PrgCmdLine\nodejs\

> npm -v
2.7.3

享受。:-)

对于窗口安装Node.js v16.15.1后npm-v仍然是6.6.0删除C:\Users\neals\AppData\Roaming下的npm和npm缓存npm-v为8.11.0

只需使用这个

npm i -g npm

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

处理节点版本的最佳方法是使用NVM或节点版本管理器安装后,使用以下命令:

nvm list (shows you the list of installed nodejs version)
nvm install nodeversion   (to install the node version, if latest use  @latest) 
nvm use 10.515..   (to use a perticular node version)

对于Linux,我建议使用包管理器更新节点:

Node预装了npm,但管理器的更新频率比Node高。运行npm-v查看您的版本,然后运行npm installnpm@latest-g安装最新的npm更新。如果要确保npm正确更新,请再次运行npm-v。

要更新NodeJS,您需要npm方便的n模块。运行以下代码以清除npm的缓存,安装n,并安装Node的最新稳定版本:

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

要安装最新版本,请使用n最新版本。或者,可以运行n#.#.#以获取特定节点版本。


当谈到Windows/macOS时,我建议在Nodejs.org上使用Installers

Node.js下载页面包含Windows和macOS的二进制软件包,但为什么要让你的生活更困难呢?预装的安装程序-适用于Windows的.msi和适用于macOS的.pkg-使安装过程难以置信地高效和易于理解。下载并运行该文件,并让安装向导负责其余部分。每次下载更新后,Node和npm的较新版本都将替换旧版本。

或者,macOS用户可以使用上面的npm和n指令。


在更新node_modules dependencies文件夹时,我建议跳过所有可能会让您头疼的事情,只需转到特定的项目并重新运行npm安装。

在任何人这样做之前,我建议首先检查package.json文件中的以下内容:

作为NodeJS包的用户,您可以在package.json文件中指定应用程序可以接受哪些类型的更新。例如,如果您从软件包版本1.0.4开始,这是您可以通过三种基本方式指定允许的更新版本范围的方式:

允许修补程序版本:1.0或1.0.x或~1.0.4允许次要版本:1或1.x或^1.0.4允许主要版本:*或x

说明:

存在不兼容API更改时的MAJOR版本。-->~

以向后兼容方式添加功能时的MINOR版本。-->^

完成向后兼容错误修复时的PATCH版本。-->*