首页 文章

如何将NodeJS和NPM更新到下一个版本?

提问于
浏览
1320

我刚刚安装了 Node.jsnpm (用于其他模块) .

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

可以 npm 这样做,还是我必须删除并重新安装Node.js和npm才能获得下一个版本?

我按照 npm 部分中的this步骤进行操作 .

30 回答

  • 104

    您可能知道,NPM目前与Node.js捆绑在一起,这意味着如果您已经安装了 node ,那么您已经安装了 npm . 有几种方法可以保持最新的Node.js和NPM,您需要使用以下版本管理器之一:

    Homebrew

    如果你在Mac上,你可以使用Homebrew . 使用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.

    n最有可能 rvm (Ruby Version Manager),可用于管理和更新 node/npm 版本 .

    轻松安装Node.js版本:

    $ n 0.10.26
    $ n 0.8.17
    $ n 0.9.6
    

    使用(如果缺少则安装)最新的官方发布:

    $ n latest
    

    使用/安装稳定的官方发布:

    $ n stable
    

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

    $ n prev
    

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

    $ n
    
      0.10.26
    • 0.8.17
      0.9.6
    

    点(•)表示它是当前活动的版本 . 要从列表中选择节点版本,请使用 updown 箭头并使用 enter 激活 .

    n 包是在纯 linux shell 上编写的,可用作npm模块(包含 package.json ),因此如果您安装了任何Node.js,则可以通过 npm 安装/更新 n

    $ npm install -g n
    

    NVM

    nvm也像 RVM ,甚至命令名称和用法都非常相似 .

    使用 nvm 下载,编译和安装Node.js的最新v0.10.x版本:

    $ nvm install 0.10
    

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

    $ nvm use 0.10
    

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

    $ nvm use
    

    或者你可以运行它:

    $ nvm run 0.10
    

    如果要查看已安装的版本,请使用:

    $ nvm ls
    

    要安装 nvm 本身,您可以使用install script(需要 git )使用 cURL

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

    wget

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

    附:

    所有这些方法我都对如何在Windows上管理Node.js版本有任何经验,我只能假设 n (第二个)将适用于Microsoft的OS(至少来自 cygwin ) .

  • 370

    对于nodejs应该卸载它并从nodejs.org下载你喜欢的版本,以便在cmd下面的npm下运行:

    npm i npm
    
  • 25

    我理解这个问题适用于Linux机器,但是如果有人正在寻找Windows解决方案,只需转到the Node.js site,单击主页上的 download 按钮并执行安装程序 .

    值得庆幸的是,它完成了所有工作,只需点击几下“下一步”按钮,我就可以在Windows 7机器上运行最新的0.8.15 Node.js版本 .

  • 8

    我刚刚在新的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\ (现在,我避免在程序文件和派生中安装东西 . 避免路径中的空间,嘈杂无用的保护更安全...)
    如果我做 which npm.cmd (我安装了Unix实用程序......),它指向Node中的那个 .

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

    > npm -v
    2.7.3
    

    请享用 . :-)

  • 211

    我发现在David Walsh's blog上更新节点的方法非常简洁,您可以通过安装 n 来实现:

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

    它将安装 node 的当前稳定版本 . 但是,我建议使用 nvm .

  • 10

    首先更新 npm

    npm install -g npm@next

    然后将 node 更新为下一个版本,

    npm install -g node@nextnpm install -g n@next 或者,最新的,

    npm install -g node@latestnpm install -g node

    版本安装后检查,

    node --versionnode -v

  • 14

    只需在控制台上运行以下脚本:

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

    这仅适用于Linux和MAC

  • 9

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

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

    http://nodejs.org/ -> click INSTALL -> you'll have the latest node and npm

    简单!

  • 41

    使用n module from npm以升级节点 . n是安装或的节点帮助程序包更新给定的node.js版本 .

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

    如果您收到以下错误 bash: /usr/bin/node: No such file or directory ,则输入您输入的路径

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

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

    我会建议 strongly againstproduction instance 这样做 . 它会严重影响您的全局npm软件包以及安装新软件包的能力 .

  • 3

    对于 Cygwin 用户:

    Cygwin 中安装n(节点版本管理器)不起作用,而是使用以下命令更新节点:

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

    是的,您需要先安装 wget .

  • 5

    这是一个简单的修复程序,适用于那些通过Homebrew安装 node 而没有使用 npm 以及稍后使用官方脚本进行 npm 升级/安装的人 . 此方法假定您已按如下方式运行 node 安装:

    brew install node --without-npm
    echo prefix=~/.npm-packages >> ~/.npmrc
    curl -L https://www.npmjs.com/install.sh | sh
    

    如果失败则从这里开始 . 如果有的话删除 npm

    rm -rf ~/.npm-packages/lib/node_modules/npm
    

    下载并解压缩最新版本的 npm ,目前为5.6.0:

    cd ~
    curl -L https://registry.npmjs.org/npm/-/npm-5.6.0.tgz | tar xz
    

    将解压缩的包移动到node_modules文件夹中:

    mv ~/package ~/.npm-packages/lib/node_modules/npm
    

    确保您的 ~/.bash_profile 有以下条目:

    export NPM_PACKAGES="$HOME/.npm-packages"
    export NODE_PATH="$NPM_PACKAGES/lib/node_modules:$NODE_PATH"
    export PATH="$NPM_PACKAGES/bin:$PATH"
    

    来源文件:

    source ~/.bash_profile
    

    验证安装:

    npm -v
    
  • 3

    升级Windows用户

    Windows用户应该在npm wiki中阅读Troubleshooting > Upgrading on Windows .

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

    Troubleshooting#upgrading-on-windows上方的链接指向github页面npm-windows-upgrade以下行是自述文件中的引号 . 我使用node v5.7.0和powershell(大概是powershell版本5.0.10586.122)成功地从npm 2.7.4升级到npm 3.9.3

    首先,通过从提升的PowerShell运行以下命令,确保您可以在系统上执行脚本 . 要以管理员身份运行PowerShell,请单击“开始”,搜索PowerShell,右键单击“PowerShell”,然后选择“以管理员身份运行” .

    Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force
    

    然后,要安装并使用此升级工具,请运行(也可以从提升的PowerShell或cmd.exe):

    npm install --global --production npm-windows-upgrade
    npm-windows-upgrade
    
  • 9

    如果您不想更新到最新版本 . 执行此命令:

    npm install npm@4.2.0 -g

    将4.2.0替换为您想要的任何版本 . 以下是截至2017年10月3日的所有发布版本:https://nodejs.org/en/download/releases/

  • 91

    你应该看到这个博客nodejs install with package-manager

    在执行此命令之前 . 你显示运行 sudo apt-get update ,确保结果是 Reading package lists... Doneno ERROR

    一步一步(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
    

    install 7_x

    curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -
    sudo apt-get install -y nodejs
    
  • 9

    只需使用此代码

    npm install update
    
  • 3

    如果您使用的是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 版本上运行良好 .

  • 1480

    简单使用这个

    npm i -g npm
    

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

  • 4
    • update node 使用nvm(或nvmw用于Windows) .

    • update npmnpm update npm -g 命令对我不起作用(在Windows上) . 根据the documentation重新安装npm的工作是什么:“你可以从https://npmjs.org/dist/下载一个zip文件,然后将它解压缩到node.exe所在的同一个文件夹中 . ”确保如果你这样做,你先摆脱以前的安装(虽然覆盖它可能会正常工作......) .

    • update your modules ,使用npm update command

  • 17
    $ npm install -g npm stable
    

    我的工作是从1.4.28更新到2.1.5

  • 46

    试试最新稳定版的npm

    查看您正在运行的npm版本:

    npm -v
    

    升级* nix(OSX,Linux等)

    (如果使用默认安装程序安装了Node,则可能需要在 sudo 前加上这些命令,特别是在Linux或OS X上 . )

    您可以使用以下命令升级到最新版本的npm:

    npm install -g npm@latest
    

    或者升级到最新版本:

    npm install -g npm@next
    

    在Windows上升级


    默认情况下,npm与节点一起安装

    C:\Program Files (x86)\nodejs

    npm的全局安装包(可能包括npm本身)分别存储在用户特定的目录中(目前是

    C:\Users\<username>\AppData\Roaming\npm ) .

    因为安装程序放了

    C:\Program Files (x86)\nodejs

    之前

    C:\Users\<username>\AppData\Roaming\npm

    PATH 上,它将始终使用与节点一起安装的npm版本,而不是使用 npm -g install npm@<version> 安装的npm版本 .

    要解决这个问题,您可以执行以下操作: one

    • 选项1:edit your Windows installation's PATH%appdata%\npm 放在 %ProgramFiles%\nodejs 之前 . 请记住,当您对 PATH 进行更改或如何安装npm时,您需要重新启动 cmd.exe (并可能重新启动Windows) .

    • 选项2:删除两者

    • %ProgramFiles%\nodejs\npm

    • %ProgramFiles%\nodejs\npm.cmd

    • 选项3:导航到 %ProgramFiles%\nodejs\node_modules\npm 并复制 npmrc 文件到另一个文件夹或桌面 . 然后打开 cmd.exe 并运行以下命令:

    cd%ProgramFiles%\ nodejsnpm install npm @ latest
    如果使用node.js安装程序安装了npm,则在执行上述步骤之后,请执行以下操作 .

    • 选项1或2

    • 进入 %ProgramFiles%\nodejs\node_modules\npm 并在新的npm文件夹中复制名为 npmrc 的文件,该文件夹应为 %appdata%\npm\node_modules\npm . 这将告诉新的npm全局安装包的位置 .

    • 选项3

    • 将npmrc文件复制回 %ProgramFiles%\nodejs\node_modules\npm

    有关内置Windows配置的简要说明

    Node安装程序直接在npm文件夹中安装一个特殊的Windows特定配置,告诉npm安装全局软件包的位置 . 当npm用于自行安装时,应该将这个特殊的 builtin 配置复制到新安装中 . 某些版本的npm中存在一个错误,导致无法正常工作,因此您可能需要手动修复 . 运行以下命令以查看npm将在何处安装全局程序包以验证它是否正确 .

    npm config get prefix -g
    

    如果未设置为 <X>:\Users\<user>\AppData\Roaming\npm ,则可以运行以下命令进行更正:

    npm config set prefix "${APPDATA}/npm" -g
    

    顺便提一下,如果您希望不将软件包安装到漫游配置文件中(因为您的共享网络上有配额,或者它使得从域缓慢登录或注销),您可以将其放在本地应用程序数据中:

    npm config set prefix "${LOCALAPPDATA}/npm" -g
    

    ...以及将 %APPDATA%\npm 复制到 %LOCALAPPDATA%\npm (当然还要更新 %PATH% ) .

    在npm工作的每个人都知道这个过程很复杂,而且我们正在努力使它变得更简单 . 敬请关注 .

    资料来源:https://docs.npmjs.com/troubleshooting/try-the-latest-stable-version-of-npm

  • 4

    此外,如果您要更新到特定版本,请按照下列步骤操作:

    sudo npm cache clean -f
    sudo npm install -g n
    sudo n <specific version>
    
  • 10

    Install npm => sudo apt-get install npm

    Install n => sudo npm install n -g

    latest version of node => sudo n latest

    Specific version of node you can

    List available node versions => n ls

    Install a specific version => sudo n 4.5.0

  • 6

    要更新npm:

    npm install npm@{version} -g
    

    将npm更新到最新版本:

    npm install npm@latest -g
    

    并检查版本:

    npm -v
    

    更新节点js:

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

    去检查 :

    node -v
    
  • 132

    首先检查您的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重新安装到从版本列表中选择的特定版本 - 例如5.0.3

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

    • 对于Linux和iOS前置命令 sudo

  • 6

    适用于Linux,OSX等 .

    To install the latest version of NPM

    npm install -g npm@latest

    Or To Install the most recent release

    npm install -g npm@next

    附加:检查您的npm版本

    npm -v

    如果您使用的是Windows机器,我建议您访问npm网站

  • 3

    请参阅 update 命令的文档:

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

    此命令将更新列出的最新版本的所有软件包(由标记配置指定) . 它还将安装缺少的包 .

    另外,请参阅Node.js and NPM installationUpgrading NPM上的文档 .

    以下原始答案来自旧的常见问题解答,不再存在,但应适用于Linux和Mac:

    我如何更新npm? npm install -g npm
    请注意,此命令将删除当前版本的npm . 如果在Mac上,请务必使用sudo npm install -g npm . 您还可以通过执行npm update而不使用任何参数来更新所有过时的本地程序包,或者通过执行npm update -g来更新全局程序包 . 有时,npm的版本会进展,以至于无法使用已安装的版本正确安装当前版本 . (考虑一下,如果更新命令中有错误 . )在这些情况下,您可以这样做:curl https://www.npmjs.com/install.sh | SH

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

  • 12

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

    这有点偏离主题,但我最终在这里进行了类似的搜索,所以认为值得分享 .

  • 8

    刚听完了最新一集nodeup对npm团队的采访,他们建议不要使用 update 进行从 1.x2.x 的更新 . 相反,使用: npm install npm -g

  • 50

    只需在终端中以root / administrator身份运行以下命令:

    npm i -g n
    n stable
    npm update -g npm
    

    它在Linux上对我有用

  • 11

    更新npm很简单:

    npm install npm@latest -g
    

相关问题