npm install 卡住通常是由于網絡問題或緩存問題導致的。以下是幾種解決方法:
方法1:清理npm緩存
npm cache clean --force
npm install
方法2:刪除node_modules和package-lock.json重新安裝
rm -rf node_modules package-lock.json
npm install
(Windows PowerShell 中使用:)
Remove-Item -Recurse -Force node_modules, package-lock.json
npm install
方法3:使用國內鏡像源
# 臨時使用淘寶鏡像
npm install --registry https://registry.npmmirror.com# 或者永久設置
npm config set registry https://registry.npmmirror.com
方法4:增加超時時間
npm install --timeout=60000
方法5:使用yarn替代npm
# 如果沒有yarn,先安裝
npm install -g yarn# 然后使用yarn安裝依賴
yarn install
方法6:檢查網絡和代理設置
如果你在使用代理,可能需要配置npm代理:
npm config set proxy http://your-proxy:port
npm config set https-proxy http://your-proxy:port
如果還是不行則繼續分析
主要問題:淘寶鏡像證書過期
舊的淘寶鏡像 registry.npm.taobao.org
已經停用,需要更換為新的鏡像:
# 更換為新的淘寶鏡像
npm config set registry https://registry.npmmirror.com
完整解決步驟:
1. 更換鏡像源
npm config set registry https://registry.npmmirror.com
2. 解決文件占用問題
由于有文件被占用無法刪除,需要:
# 關閉所有可能占用文件的程序(VSCode、編輯器等)
# 然后強制刪除
Remove-Item -Recurse -Force node_modules -ErrorAction SilentlyContinue
Remove-Item -Force package-lock.json -ErrorAction SilentlyContinue
如果還是刪不掉,重啟電腦后再刪除。
3. 重新安裝
npm install
其他可用的鏡像源:
# 官方源(較慢但穩定)
npm config set registry https://registry.npmjs.org# 阿里云鏡像(推薦)
npm config set registry https://registry.npmmirror.com# 騰訊云鏡像
npm config set registry https://mirrors.cloud.tencent.com/npm/# 華為云鏡像
npm config set registry https://repo.huaweicloud.com/repository/npm/
關于core-js警告
這只是一個警告,不影響安裝。如果想解決,可以在項目完成后升級依賴:
npm update core-js
驗證鏡像源是否設置成功:
npm config get registry
應該顯示新的鏡像地址。
建議: 先更換鏡像源,然后刪除node_modules重新安裝,這樣應該就能解決問題了。
Remove-Item -Recurse -Force node_modules
Remove-Item package-lock.json
# Short version
rm -r -fo node_modules
rm package-lock.json
rm -r -fo node_modules, package-lock.json
npm install