通過git clone拉下項(xiàng)目后,進(jìn)行項(xiàng)目的初始化下包時(shí),發(fā)現(xiàn)npm i 并沒有反應(yīng)(如圖):
關(guān)鍵點(diǎn):IdealTree
1.網(wǎng)絡(luò)問題
確保你的網(wǎng)絡(luò)連接正常,能夠正常訪問 npm 倉庫。有時(shí)網(wǎng)絡(luò)問題可能導(dǎo)致包無法正確下載
?開始以為是網(wǎng)絡(luò)問題,檢查了自己的網(wǎng)絡(luò)是可以正常瀏覽網(wǎng)頁的,并且自己的VPN或者代理是沒有開啟的。
下包嘛,等個(gè)3-4分鐘也是正常的,但是10分鐘過去了,依舊沒有反應(yīng)......就很那啥,主要是沒有報(bào)錯(cuò)也沒中斷啥的。
2.npm 緩存問題
可以清除下npm的緩存試試,或者把原來的node_modules文件刪掉再重新npm i試下。
方法1:可以運(yùn)行以下命令清除 npm 緩存(建議)
npm cache clean --force
然后再次運(yùn)行 npm install
方法2:手動(dòng)刪除緩存文件夾
-
找到 npm 緩存的文件夾。根據(jù)你的操作系統(tǒng),緩存文件夾的位置可能有所不同:在 Windows 上,通常在
%AppData%\npm-cache
目錄下。 -
刪除緩存文件夾中的所有內(nèi)容。你可以使用以下命令:
rmdir /s /q %AppData%\npm-cache
-
注意: 手動(dòng)刪除文件夾的操作要謹(jǐn)慎,確保你只刪除了 npm 緩存文件夾而不是其他重要文件夾。
-
刪除緩存后,可以再次運(yùn)行
npm install
來安裝項(xiàng)目的依賴項(xiàng)。
通過清除npm的緩存,但是還是沒有效果
?3.鏡像源問題
選擇一個(gè)適合你網(wǎng)絡(luò)環(huán)境的 npm 鏡像源,以提高包的下載速度。
下包卡住可能是源引起的,因?yàn)?span style="color:#ff9900;">默認(rèn)的官方源是國外的,而我們卻在國內(nèi)。
查看當(dāng)前的 npm 鏡像源:
npm config get registry
?如圖可見我用的是國內(nèi)的淘寶源:
本人使用的是國內(nèi)的淘寶源,沒有問題
?下面是切換源的方法:
1.使用淘寶鏡像源
npm config set registry https://registry.npm.taobao.org/
2.使用官方鏡像源(還原為默認(rèn))
npm config set registry https://registry.npmjs.org/
3.鏡像源加速工具
除了手動(dòng)切換鏡像源外,還有一些工具可以幫助你在需要時(shí)快速切換。例如,nrm
(npm registry manager)是一個(gè)方便的工具,可以管理 npm 鏡像源。
安裝 nrm
npm install -g nrm
使用 nrm
切換源
查看所有可用的鏡像源:
nrm ls
使用 nrm
切換為淘寶源:
nrm use taobao
使用 nrm
切換為官方源:
nrm use npm
4.npm版本問題
可能是npm版本過低的問題,可以嘗試更新下npm的版本,但是一般公司的npm版本不會很高,因?yàn)楣镜捻?xiàng)目有好多是老項(xiàng)目的,有些特殊的需要指定的版本,所以不要亂搞了啦
我這并不是這個(gè)版本問題
查看已安裝包的版本:
npm list
要更新 npm
到最新版本,你可以使用以下命令:
npm install -g npm@latest
這會全局安裝 npm
的最新版本。-g
選項(xiàng)表示全局安裝,npm@latest
指定要安裝的包和版本。
請注意,這需要管理員(root)權(quán)限。如果你用的是蘋果電腦,就是在 macOS 系統(tǒng)上,你可能需要在命令前添加 sudo
。
sudo npm install -g npm@latest
?請確保在執(zhí)行此操作之前備份你的項(xiàng)目(如果正在執(zhí)行項(xiàng)目特定的更新),以防發(fā)生意外情況。
5.鏡像源地址替換問題(重要)
2024 年 1 月 22 日?,registry.npm.taobao.org
?的 SSL 證書正式過期。
2022 年 5 月?淘寶源發(fā)布了公告:
(大家應(yīng)該沒有太多關(guān)注哦,也包括我,哈哈)
?。。。。。。。。。。。。。。。?!
淘寶鏡像源地址由?registry.npm.taobao.org
?替換為?registry.npmmirror.com
?。
?。。。。。。。。。。。。。。。?!
// 切換源之前最好清下npm的緩存?
npm cache clean --force
//切換為最新的 taobao 源
npm config set registry https://registry.npmmirror.com
?原來是官方源已經(jīng)替換了,恍然大悟了,當(dāng)我切換后可以正常下載了
?如圖所示已經(jīng)沒有問題了,以下就搞完了,成功解決。
并不意味著?taobao
?源完全廢棄,我們依舊可以通過關(guān)閉 SSL 嚴(yán)格檢測來跳過該驗(yàn)證。
6.繞過SSL證書檢查(非嚴(yán)格的 SSL 模式)
非必要不推薦
npm 在下載包的過程中會驗(yàn)證 SSL 證書的有效性,確保下載的包是安全可靠的。但在某些特殊情況下,比如使用了自定義的 npm 鏡像源或是鏡像源配置有問題導(dǎo)致 SSL 證書無法通過驗(yàn)證時(shí),可能會導(dǎo)致安裝失敗。
?下面這個(gè)命令的作用是用來設(shè)置 npm 使用非嚴(yán)格的 SSL 模式,允許在安裝包時(shí)忽略 SSL 證書的有效性,從而繞過SSL證書檢查。
npm config set strict-ssl false
?設(shè)置?strict-ssl
?為?false
?會帶來一定的風(fēng)險(xiǎn),因?yàn)檫@樣做會降低安全性,使得下載的包可能受到中間人攻擊的風(fēng)險(xiǎn)。因此,建議只在必要的情況下使用該命令,并在調(diào)試或特殊情況下及時(shí)恢復(fù)為嚴(yán)格的 SSL 模式,以確保包的安全性。
雖然可以解決在特定情況下 SSL 證書驗(yàn)證失敗導(dǎo)致的包無法下載的問題,但同時(shí)也帶來了安全風(fēng)險(xiǎn),需要慎重使用。文章來源:http://www.zghlxwxcb.cn/news/detail-842139.html
上面講的幾種可能性,希望能幫助到大家,謝謝文章來源地址http://www.zghlxwxcb.cn/news/detail-842139.html
到了這里,關(guān)于npm i卡在 idealTree buildDeps沒反應(yīng)的解決方案的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!