一、node
、nvm
、npm
、npx
、nrm
区别
node
:是一个基于Chrome V8
引擎的JS
运行环境。npm
:是node.js
默认的包管理系统(用JavaScript
编写的),在安装的node
的时候,npm
也会跟着一起安装,管理node
中的第三方插件。npx
:npm
从v5.2.0
开始新增了npx
命令,>=
该版本会自动安装npx
nrm
:是一个npm
源管理工具,使用它可以快速切换npm
源,默认是官方源,当npm
下载包过慢时,可能需要切换到第三方源(例如:淘宝、科大...),还有公司私有源地址等等。nvm
:node
版本管理器,也就是说:一个nvm
可以管理多个node
版本(包含npm
与npx
),可以方便快捷的安装
、切换
不同版本的node
。
二、node
、nvm
、npm
、npx
、nrm
关系
nvm
管理node
(包含npm
与npx
) 的版本,npm
可以管理node
的第三方插件,nrm
可以管理npm
的源地址(当然也可以直接使用npm
自带命令管理,看个人习惯)。切换不同的
node
版本,npm
与npx
的版本也会跟着变化。
$ nvm use v8.16.0
Now using node v8.16.0 (npm v6.4.1)
$ nvm use v14.15.4
Now using node v14.15.4 (npm v6.14.10)
$ nvm use v18.6.0
Now using node v18.6.0 (npm v8.13.2)
使用 nvm
安装最新稳定版
node
nvm install latest
安装指定版本,可模糊安装,如:安装
v4.4.0
,既可 $ nvm install v4.4.0
,又可 $ nvm install 4.4
nvm install <version>
删除已安装的指定版本,语法与
install
用法一致nvm uninstall <version>
切换使用指定的版本
node
// 临时版本 - 只在当前窗口生效指定版本
$ nvm use <version>
// 永久版本 - 所有窗口生效指定版本
$ nvm alias default <version>
列出所有安装的版本
nvm ls
列出所有远程服务器的版本(官方
node version list
)nvm ls-remote
显示当前的版本
nvm current
给不同的版本号添加别名
nvm alias <name> <version>
删除已定义的别名
nvm unalias <name>
nvm-windows:
安装nvm-windows时,会提示指定一个nodejs路径,当时并不知道什么意思,后来才发现当执行nvm use vXX.YY.ZZ时,会将该路径内nodejs的版本切换到XX.YY.ZZ,所以这个路径可以理解为nvm做了一个软链接。
执行nvm install 之后,会在nvm目录下安装相应版本的nodejs