温馨提示×

CentOS上Node.js模块如何管理

小樊
41
2025-12-17 20:29:09
栏目: 编程语言

CentOS 上 Node.js 模块管理实战指南

一 环境准备与 Node 安装

  • 使用 NVM 管理多版本 Node(推荐)
    • 安装与启用:
      curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
      source ~/.bashrc    # 或 source ~/.bash_profile
      nvm --version
      
    • 安装与切换版本:
      nvm install --lts
      nvm use --lts
      nvm alias default lts/*
      node -v && npm -v
      
  • 使用 NodeSource 仓库安装(系统级)
    curl -fsSL https://rpm.nodesource.com/setup_lts.x | sudo -E bash -
    sudo yum install -y nodejs
    node -v && npm -v
    

以上两种方式任选其一即可;NVM 更适合多项目多版本切换,NodeSource 适合系统级统一版本管理。

二 使用 NPM 进行模块管理

  • 项目初始化与依赖记录
    npm init -y
    npm install express
    npm install webpack --save-dev
    
  • 本地与全局安装
    • 本地安装(项目内使用,写入 dependencies/devDependencies):npm i <pkg>
    • 全局安装(命令行工具,不写入项目依赖):npm i -g <pkg>
  • 版本语义与锁定
    • 版本前缀:^ 允许次版本/补丁更新,~ 仅允许补丁更新,* 最新版本(慎用)
    • 锁定文件:package-lock.json 用于确保团队成员与 CI 环境安装完全一致
  • 常用命令
    npm update            # 更新依赖
    npm outdated          # 检查过期依赖
    npm uninstall <pkg>   # 卸载本地依赖
    npm uninstall -g <pkg>  # 卸载全局依赖
    npm list              # 查看本地依赖树
    npm list -g           # 查看全局依赖
    npm prune             # 清理未使用依赖
    npm cache clean --force  # 清理缓存
    
  • 加速与配置
    npm config set registry https://registry.npmmirror.com
    npm config get registry
    npm i -g npm         # 升级 npm 自身
    

以上命令覆盖日常安装、更新、卸载、审计与加速等核心场景。

三 使用 Yarn 或 PNPM

  • Yarn
    npm i -g yarn
    yarn init -y
    yarn add express
    yarn add webpack --dev
    yarn upgrade
    yarn remove <pkg>
    
  • PNPM
    npm i -g pnpm
    pnpm add express
    pnpm add webpack --save-dev
    
  • 锁文件差异:yarn.lock(Yarn)、pnpm-lock.yaml(PNPM)、package-lock.json(NPM),请确保提交到版本控制以锁定依赖版本。

四 全局工具与本地依赖的最佳实践

  • 全局安装适用于 CLI 工具(如 typescript、eslint、nodemon),业务代码依赖一律本地安装,避免“全局污染”与版本冲突。
  • 使用 npm link 在本地开发调试全局 CLI 或本地包:
    # 在包目录
    npm link
    # 在目标项目
    npm link <package-name>
    # 解除
    npm unlink <package-name>
    
  • 建议将 node_modules 加入 .gitignore,仅提交 package.json 与锁文件,便于协作与复现构建。

五 常见问题与排查

  • 权限问题:避免用 sudo npm i -g;优先用 NVM 或正确配置 npm 全局目录 权限。
  • 版本不一致:确保使用同一 Node 版本(如 nvm use),并使用锁文件(package-lock.json/yarn.lock/pnpm-lock.yaml)。
  • 安装缓慢或失败:切换 npm 镜像npmmirror.com,必要时执行 npm cache clean --force
  • 依赖冲突与冗余:用 npm outdatednpm prune 与锁文件审查,必要时重建依赖(rm -rf node_modules package-lock.json && npm i)。

0