Node.js 安装新版本的npm并使用它,而不是共享版本
我们有很多人在我们的项目所在的同一台服务器上工作。当然,每个人都有自己的虚拟环境 我们都共享相同的Node.js 安装新版本的npm并使用它,而不是共享版本,node.js,npm,Node.js,Npm,我们有很多人在我们的项目所在的同一台服务器上工作。当然,每个人都有自己的虚拟环境 我们都共享相同的v4.4.5和2.15.5 但是,我需要npm>=3.0.0,所以我安装了一个较新的版本/usr/local/n/versions/node/8.1.3/bin/npm,并将node和npm的别名添加到我的~/.bashrc # ~/.bashrc alias node='/usr/local/n/versions/node/8.1.3/bin/node' alias npm='/usr/loca
v4.4.5
和2.15.5
但是,我需要npm>=3.0.0
,所以我安装了一个较新的版本/usr/local/n/versions/node/8.1.3/bin/npm
,并将node
和npm
的别名添加到我的~/.bashrc
# ~/.bashrc
alias node='/usr/local/n/versions/node/8.1.3/bin/node'
alias npm='/usr/local/n/versions/node/8.1.3/bin/npm'
然后我把它来源于source~/.bashrc,我认为它是有效的,因为
$ npm --version
5.0.3
直到我跑
我不明白为什么它似乎在运行共享过时的npm
,而不是我的
还有一件很奇怪的事
$ which npm # shows the shared one
$ `which npm` --version
2.15.5
节点版本管理器使管理多个节点环境成为一项简单的任务。这解决了我的问题(基于)
哪个npm的结果是什么?@OliverCharlesworth是共享的,而不是我的。抱歉,我认为这很清楚,更新了我的问题,那么这可能是您如何设置shell的人工制品。自从您更新了
~/.bashrc
(或启动了一个新的shell)之后,您是否已将其来源化了?旧的npm
是否通过$PATH
环境变量访问?@OliverCharlesworth你说得对!!添加export PATH=“/usr/local/n/versions/node/8.1.3/bin:$PATH”
解决了我的问题(我想是覆盖了旧的npm),谢谢。请加上答案,我会接受的
$ which npm # shows the shared one
$ `which npm` --version
2.15.5
export PATH="/usr/local/n/versions/node/8.1.3/bin:$PATH"