一、Node.js版本管理器NVM安装与使用
1.1 NVM简介
NVM(Node Version Manager)是一个Node.js版本管理工具,允许在同一台机器上轻松切换不同版本的Node.js。它是Linux环境下管理Node.js版本的最佳选择。
1.2 安装NVM
使用以下命令安装NVM:
bash
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
或者使用wget:
bash
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
安装完成后,重新加载shell配置:
bash
source ~/.bashrc
# 或者如果使用zsh
source ~/.zshrc
验证NVM安装:
bash
command -v nvm
1.3 NVM常用命令
安装Node.js版本
bash
# 安装最新的LTS版本
nvm install --lts
# 安装指定版本
nvm install 20.17.0
# 安装最新版本
nvm install node
切换Node.js版本
bash
# 切换到指定版本
nvm use 20.17.0
# 切换到最新的LTS版本
nvm use --lts
查看已安装版本
bash
# 列出已安装的版本
nvm ls
# 列出所有可安装的远程版本
nvm ls-remote
设置默认版本
bash
# 设置默认版本
nvm alias default 20.17.0
卸载Node.js版本
bash
nvm uninstall 20.17.0
二、pnpm安装与配置
2.1 pnpm简介
pnpm是一个快速、节省磁盘空间的包管理器,相比npm具有更好的性能和更严格的依赖管理。
2.2 安装pnpm
方法一:使用独立脚本(推荐)
bash
curl -fsSL https://get.pnpm.io/install.sh | sh -
或者使用wget:
bash
wget -qO- https://get.pnpm.io/install.sh | sh -
方法二:使用Corepack(Node.js >= 16.13)
bash
# 启用Corepack
corepack enable
# 安装最新版pnpm
corepack prepare pnpm@latest --activate
方法三:使用npm安装
bash
npm install -g pnpm
2.3 安装特定版本的pnpm
bash
curl -fsSL https://get.pnpm.io/install.sh | env PNPM_VERSION=9.0.0 sh -
2.4 验证pnpm安装
bash
pnpm --version
三、yarn安装与配置
3.1 yarn简介
Yarn是Facebook开发的包管理器,专注于速度、安全性和一致性。
3.2 安装yarn
方法一:使用Corepack(推荐)
bash
# 启用Corepack
corepack enable
# 安装最新版yarn
corepack prepare yarn@stable --activate
方法二:使用npm安装
bash
npm install -g yarn
方法三:使用官方脚本
bash
curl -o- -L https://yarnpkg.com/install.sh | bash
3.3 验证yarn安装
bash
yarn --version
四、包管理器常用命令对比
4.1 项目初始化
操作 | npm | yarn | pnpm |
---|---|---|---|
初始化项目 | npm init |
yarn init |
pnpm init |
4.2 依赖安装
操作 | npm | yarn | pnpm |
---|---|---|---|
安装所有依赖 | npm install |
yarn install |
pnpm install |
安装特定包 | npm install <package> |
yarn add <package> |
pnpm add <package> |
安装开发依赖 | npm install <package> --save-dev |
yarn add <package> --dev |
pnpm add <package> --save-dev |
全局安装 | npm install <package> -g |
yarn global add <package> |
pnpm add <package> -g |
4.3 依赖管理
操作 | npm | yarn | pnpm |
---|---|---|---|
卸载包 | npm uninstall <package> |
yarn remove <package> |
pnpm uninstall <package> |
更新包 | npm update <package> |
yarn upgrade <package> |
pnpm update <package> |
查看已安装包 | npm list --depth=0 |
yarn list --depth=0 |
pnpm list --depth=0 |
4.4 脚本执行
操作 | npm | yarn | pnpm |
---|---|---|---|
运行脚本 | npm run <script> |
yarn <script> |
pnpm <script> |
查看可用脚本 | npm run |
yarn run |
pnpm run |
4.5 缓存管理
操作 | npm | yarn | pnpm |
---|---|---|---|
清理缓存 | npm cache clean |
yarn cache clean |
pnpm store prune |
五、实践与注意事项
5.1 版本管理最佳实践
- 使用LTS版本:生产环境建议使用Node.js的LTS(长期支持)版本
- 项目版本锁定 :在项目中使用
.nvmrc
文件指定Node.js版本 - 避免sudo:不要使用sudo安装全局包,使用nvm管理用户级安装
5.2 包管理器选择建议
- npm:适合初学者,Node.js内置,兼容性最好
- yarn:适合大型项目,依赖安装速度快,工作区支持好
- pnpm:适合磁盘空间敏感环境,依赖管理严格,节省空间
5.3 常见问题解决
NVM命令找不到
bash
# 重新加载配置文件
source ~/.bashrc
# 或者手动加载nvm
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
权限问题
bash
# 检查nvm安装目录权限
ls -la ~/.nvm
# 如果权限不正确,修复权限
chown -R $USER:$USER ~/.nvm
包安装失败
bash
# 清理缓存后重试
npm cache clean --force
# 或
yarn cache clean
# 或
pnpm store prune