Windows 和 Ubuntu 下安装 nvm 管理 nodejs
1.Windows 下
Windows 下安装比较复杂
1.下载安装 nvm
-
下载 github 地址
-
此处选择的是 nvm 的安装位置
-
此处选择的是用于nodejs 版本更换的快捷方式
此处位置应该自定义新建一个名字为nodejs的空文件夹
2.进行 nvm 的配置
-
打开 nvm 安装目录的setting.txt
主要设置两个镜像 node_mirror 和 npm_mirror
root: D:\node\nvm arch: 64 proxy: none originalpath: . originalversion: node_mirror: https://npm.taobao.org/mirrors/node/ npm_mirror: https://npm.taobao.org/mirrors/npm/
-
解析
root:nvm 家目录 path:node.js 版本快捷方式目录,自动生成的时候用到,不要手动创建 arch:系统架构 64 位 proxy:代理不需要设置 node_mirror:node 镜像地址 npm_mirror:npm 镜像地址
-
进行测试与安装 nodejs
# 测试 nvm nvm -version # 列出可以安装的 nodejs 版本 nvm list available # 安装想要安装的版本 nvm install 12.20.1 nvm install 14.15.4 # 使用某个版本 nvm use 12.20.1 # 查看是否使用成功,当前版本会出现一个 * nvm ls # 测试 nodejs 和 npm 安装是否成功
-
示例
3.进行 NPM 全局安装的配置
- 设置 npm 的cache和global目录
-
.在 nvm 安装目录下找到所有安装的 nodejs 不同版本
-
所有版本的目录下新建node_cache、node_global2 个文件夹
-
进行 npm config 的设置
# 修改缓存地址为当前使用 node.js 版本目录下的 node_cache 目录,
# 用于下载和安装包时放置临时文件什么的
npm config set cache "D:\node\nodejs\node_cache"
#修改 npm 全局安装包的地址
npm config set prefix "D:\node\nodejs\node_global"
-
为 npm 配置环境变量: 变量名为:NPM_HOME,变量值:“D:\node\nodejs\node_global”
“D:\node\nodejs\node_global” 为 npm 全局安装包的地址
-
在Path的最前面添加 ;%NPM_HOME%
这个一定要添加在 %NVM_SYMLINK%(nvm 安装时自动添加) 之前
4.完成安装
-
重新打开命令行窗口
# 安装 nrm 用于 npm 安装源的管理 npm i nrm -g # 安装 yarn 用于代替 npm 进行包管理 npm i yarn -g
-
测试可用性
nrm ls yarn -v
-
图例
5.可能出现的问题
-
无法加载文件 C:\Program Files\nodejs\nrm.ps1
因为在此系统上禁止运行脚本
# 管理员身份打开 PowerShell #1.执行: get-ExecutionPolicy #显示 Restricted(表示状态是禁止的) #2.1 执行: set-ExecutionPolicy RemoteSigned #2.2 出现选项输入 Y #3.执行: get-ExecutionPolicy #显示 RemoteSigned
2.nrm 报错解决(ERR_INVALID_ARG_TYPE)方法
找到 nrm 目录(错误第四行)
> at Object.<anonymous> (C:\Users\liyin\AppData\Roaming\npm\node_modules\nrm\cli.js:17:20)
打开 cli.js 第 17 行修改成
//const NRMRC = path.join(process.env.HOME, '.nrmrc'); (删除)
const NRMRC = path.join(process.env[(process.platform == 'win32') ? 'USERPROFILE' : 'HOME'], '.nrmrc');
2.Ubuntu 下
方法 1:脚本安装
# 使用此脚本进行安装 其他 linux 版本进入 github 查看 https://github.com/nvm-sh/nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.2/install.sh | bash
可能出现的问题
原因:
可能是由于 dns 污染,导致无法解析处真实的 IP 地址
解决:
-
在 https://www.ipaddress.com/ 查询 raw.githubusercontent.com 的真实 IP
-
修改 hosts 文件
# 修改 hosts 文件
cd /etc
vim hosts
# 添加内容
199.232.96.133 raw.githubusercontent.com
方法 2:源代码安装
Ubuntu 安装 node.js, nvm, npm, cnpm 及设置镜像_黑面|书生的博客-CSDN 博客
设置镜像
# ~/.bashrc 中设置变量
vim ~/.bashrc
# 添加如下内容
export NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node
#输入后,在终端中输入下面的命令使其生效,然后可以接着运行 nvm 命令
source ~/.bashrc