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

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

相关推荐
SaebaRyo5 分钟前
如何优雅的更新你的npm包
前端·后端·npm
计算机软件程序设计6 分钟前
Vue中有什么组件可以实现轮播效果,每次出现四个元素?
前端·javascript·vue.js
好_快1 小时前
Lodash源码阅读-baseIndexOf
前端·javascript·源码阅读
古柳_Deserts_X1 小时前
这个强大的插件能让网页里的 Shader 代码一览无余
前端·webgl·three.js
好_快1 小时前
Lodash源码阅读-indexOf
前端·javascript·源码阅读
积水成江1 小时前
【Vue3+Vite指南】全局引入SCSS文件后出现Undefined mixin?一招解决命名空间陷阱!
前端·vue.js·html5·scss
一个处女座的程序猿O(∩_∩)O1 小时前
harmonyOS NEXT开发与前端开发深度对比分析
前端·华为·harmonyos
泫凝1 小时前
NPM 常用操作指令大全
前端·npm·node.js
小妖6661 小时前
nexus搭建npm私服
前端·npm·node.js·nexus