
前端(vue)入門到精通課程:進入學(xué)習(xí)
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API調(diào)試工具:點擊使用
最近遇到一個yarn的bug,搜索之后發(fā)現(xiàn)它竟然存在6年之久,這到底是個怎樣神奇的問題?經(jīng)過一番分析排查,我給了6個解決方案。。。
1、問題描述
最近接手的幾個項目包管理器用的是 yarn@v1.22.19,在安裝依賴后無論是否成功,總是出現(xiàn)網(wǎng)絡(luò)連接問題而且會卡很長時間,然后會出現(xiàn)幾行這樣的異常日志:info There appears to be trouble with your network connection. Retrying...。
有時一些神奇的包(比如 node-sass)出現(xiàn)異常會導(dǎo)致安裝失敗,結(jié)果卡了半天才發(fā)現(xiàn)失敗,真的讓人很崩潰。另外在yarn 的 github 倉庫中有數(shù)十條相關(guān)的 issue,時間跨度從2016年到2022年足足6年,原因和方案眾說紛紜。我很好奇這到底是個什么神奇的問題居然6年都沒解決,因此決定一探究竟。【相關(guān)教程推薦:nodejs視頻教程 、編程視頻】

2、問題排查
2.1、關(guān)鍵詞搜索
2.1.1、搜索 github
碰到?jīng)]啥思路的問題和報錯,第一技巧是搜它。在yarn 的 github 倉庫中搜索報錯信息 There appears to be trouble with your network connection,可以看到結(jié)果中有1個相關(guān)代碼和91個相關(guān) issue。在 issue 里找了一會沒找到合適的方案,接著進入下一步:搜索代碼。
2.1.2、搜索代碼
由于網(wǎng)絡(luò)原因這里直接轉(zhuǎn)到本地 yarn 的安裝目錄進行查找。用 vscode 打開 yarn 的安裝目錄(我的本地目錄是~/.volta/tools/image/yarn/1.22.19),全局搜索關(guān)鍵詞 There appears to be trouble with your network connection。可以看到結(jié)果同樣只有1個,整串錯誤信息賦值給了一個變量offlineRetrying。
全局搜索關(guān)鍵詞offlineRetrying 共2處結(jié)果,除去上一步的結(jié)果只有1處引用。這里的代碼主要是拋出異常和重試,沒有
站長資訊網(wǎng)