运行npm update等命令出错后如何分析问题根源
我今天工作時,在當前前端項目工作目錄下執行命令npm update
結果遇到如下錯誤:registry error parsing json
npm ERR! Unexpected token < in JSON at position 0
有些朋友遇到這個錯誤,就不知所措了。
本文介紹如何分析npm命令報出的這些錯誤。
首先根據錯誤消息判斷出這是npm在解析一個json響應時出錯,因為這個期望的json響應第一個字符為<.
那么這個json響應的請求是從哪里來的呢?
我們需要查看命令npm update的幫助文檔。
執行命令行npm help npm打開本地安裝完npm后的幫助文檔:
如果npm update后面不指定具體的包名,則會把package.json里列出的所有依賴包更新到最新版本。
我們再看npm update錯誤輸出的最后一行,列出了一個日志文件,包含了錯誤明細。
發現是請求依賴包sap/n的包描述json文件時出的錯:
在npm全局安裝目錄下這個request.js文件很有用:
“C:\Users\i042416\AppData\Roaming\npm\node_modules\npm\node_modules\npm-registry-client\lib\request.js”
它就是npm發起http請求拿sap/n依賴包的json文件。
我們在json請求的回調函數里加上一些調試信息的打印:
現在就清楚多了,是這個依賴包sap/n的遠端有問題,直接聯系這個依賴包的負責人去修復。
作為臨時替代方案,也可以先把這個引起問題的依賴包從package.json中刪除,之后npm update正常工作.
要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":
總結
以上是生活随笔為你收集整理的运行npm update等命令出错后如何分析问题根源的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 滴滴车主头像尺寸太小怎么办(如何下载滴滴
- 下一篇: SAP成都研究院Sunshine:我的C