解决国内服务器 npm install 卡住的问题

在使用国内云服务器时,经常会遇到 npm install 命令执行卡住的情况。本文将分享一个典型案例以及常见的解决方案。

问题描述

在执行以下命令时:

bash 复制代码
mkdir test-npm
cd test-npm
npm init -y
npm install lodash --verbose

安装过程会卡在这个状态:

复制代码
(⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂) ⠙ idealTree:test-npm: sill idealTree buildDeps

常见原因及解决方案

  1. 网络连接问题
    这是最常见的原因之一。可以通过以下步骤诊断和解决:
bash 复制代码
# 测试网络连接
ping registry.npmjs.org

# 切换为国内镜像源
npm config set registry https://mirrors.huaweicloud.com/repository/npm/
  1. npm 缓存问题
    缓存可能会导致安装卡住,可以尝试清除缓存:
bash 复制代码
npm cache clean --force
  1. package-lock.json 冲突
    有时候 package-lock.json 文件可能会导致冲突:
bash 复制代码
# 删除相关文件后重新安装
rm -rf package-lock.json node_modules
npm install
  1. Node.js 版本兼容性问题
    检查 Node.js 版本是否合适:
bash 复制代码
node -v
  1. 磁盘空间不足
    确保有足够的磁盘空间:
bash 复制代码
df -h

解决方案:切换国内镜像源

在我的案例中,问题的根源是网络连接问题。通过切换到国内镜像源成功解决了这个问题。以下是推荐的国内镜像源:

华为云镜像源(推荐)

bash 复制代码
npm config set registry https://mirrors.huaweicloud.com/repository/npm/

阿里云镜像源

需要特别注意,阿里云的旧版本源已经停止服务,请使用新版本源:

bash 复制代码
# ⚠️ 旧版本源(已于 2022.06.30 停止服务)
# npm config set registry https://registry.npm.taobao.org/

# ✅ 新版本源
npm config set registry https://registry.npmmirror.com

总结

当遇到 npm install 卡住的情况时,建议首先尝试切换到国内镜像源,特别是华为云镜像源,这通常能解决大部分问题。如果问题仍然存在,可以按照上述步骤逐一排查其他可能的原因。

记住:使用国内镜像源时,一定要确保使用的是最新的地址,特别是阿里云镜像源,避免使用已经停止服务的旧地址。

相关推荐
先吃饱再说18 小时前
别再手动拼接路径了!Node.js path 模块的 9 个核心 API 详解
node.js
DianSan_ERP21 小时前
电商架构演进:如何在高并发场景下实现多平台API的标准化履约?
运维·前端·网络·安全·架构·自动化
碎_浪1 天前
给键盘党的英语记忆工具:我做了一款「打字背单词」桌面应用
前端·程序员·ai编程
阿成学长_Cain1 天前
Linux dirs命令详解|Bash目录堆栈管理快速切换目录实战教程
linux·运维·前端·数据库
yqcoder1 天前
httpOnly 是什么,又有什么用?
开发语言·前端·javascript
IT_陈寒1 天前
Java的Stream.parallel()把我CPU跑爆了,这种优化要谨慎
前端·人工智能·后端
小皮虾1 天前
小程序首页性能优化实战:从 4 秒到 1.8 秒
前端·微信小程序
烬羽1 天前
还在手动拼路径、写回调地狱?一文吃透 Node.js 的 path 和 fs
javascript·程序员·node.js
山河木马1 天前
GPU自动处理专题1-裁剪到底在裁什么(裁剪)
前端·webgl·计算机图形学