我刚刚安装了Node.js和NPM(节点包管理器)
我安装了NPM以访问其他Node.js模块。
在我安装Node.js和NPM之后,我注意到这两个版本都不可用。
我想知道:如何将Node.js、NPM和我的Node.js模块升级到最新版本?
我需要卸载Node.js和NPM并重新安装最新版本吗?
这是到目前为止我所做尝试的链接。此链接是npm的一部分。
我刚刚安装了Node.js和NPM(节点包管理器)
我安装了NPM以访问其他Node.js模块。
在我安装Node.js和NPM之后,我注意到这两个版本都不可用。
我想知道:如何将Node.js、NPM和我的Node.js模块升级到最新版本?
我需要卸载Node.js和NPM并重新安装最新版本吗?
这是到目前为止我所做尝试的链接。此链接是npm的一部分。
当前回答
警告:如果您需要从旧版本(在我的例子中是v4.6.0)更新Node,最好从头开始重新安装nodejs(下载链接:https://nodejs.org)否则,npm也会将自己更新到与新Node不兼容的版本(请参阅本讨论)。
这是我在使用npm更新Node(在Windows上)后收到的错误消息
$ npm install -g npm stable
[ . . .]
$ npm
C:\Users\me\AppData\Roaming\npm\node_modules\npm\bin\npm-cli.js:85
let notifier = require('update-notifier')({pkg})
^^^
SyntaxError: Block-scoped declarations (let, const, function, class) not yet supporte
d outside strict mode
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:373:25)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Function.Module.runMain (module.js:441:10)
at startup (node.js:139:18)
at node.js:974:3
新安装后,npm再次工作:
$ npm -v
6.5.0
$ node -v
v10.15.0
其他回答
对于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。
刚刚听取了npm团队对nodeup最新一集的采访,他们建议不要在1.x到2.x的更新中使用update,而是使用:npm安装npm-g
我在David Walsh的博客上发现了这种更新节点的方法,你可以通过安装n:
sudo npm cache clean -f
sudo npm install -g n
sudo n stable
它将安装当前稳定版本的node。
编辑:请不要再使用n。我建议使用nvm。您可以通过以下命令简单地安装stable:
nvm ls-remote
nvm install <version>
nvm use <version>
使用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软件包和你安装新软件包的能力。
检查您的软件包版本:npm-v[软件包名称]
更新它:npm Update[-g][package name]
使用-g或--global将其安装为全局包。