今天同事給了一個webpack的項目,我拿過來,npm install 忽然出現報錯了,而且報了一個奇怪的錯誤, 以下所示,node
Unexpected end of JSON input while parsing near ‘--- 「https:// github.com/w」’,webpack
安裝依賴歷來沒有失敗過,我就和同事說了一下,是否是項目的依賴有問題,他說沒有問題,他的項目都已經跑起來,問了一下其它同事,他們安裝也沒有這樣的問題,這就有點無奈了,只有我一我的有問題。爲了排查是哪一個依賴有問題,我把全部依賴都刪除了,而後一個一個進行安裝,到最後發現,居然是webpack安裝有問題,這有點接受不了,一個webpack的項目,居然沒法安裝webpack, webpack 安裝有問題,項目沒法啓動,根本沒法進行下一步操做。一時之間,竟不知道怎麼辦了。git
最後同事說,是不緩存有問題,由於之前npm 安裝依賴歷來沒有出現問題,我也不知道有緩存的問題,而後使用命令清緩存. npm cache verify, 清緩存之後,安裝webpack, 仍是報一樣的錯誤,同事也沒有辦法了。github
這時,我想是否是node 的問題,從新把node 安裝了一下,依然報一樣的問題。這時打開了node 安裝webpack依賴報錯的日誌,它有一個fetch 304, (from cache), 再加上同事說的緩存的問題,我很是確定的確認是緩存的問題了。之前也看過日誌,但不知道有緩存一說,也就沒有太在乎。web
在網上找清緩存的辦法,第一個就是 npm cache verify, 沒有效果,還有一個方法npm cache clean --force, 仍是沒有做用,最後想到到底緩存放到什麼地方,由於之前全局安裝某個命令的時候,有一個AppData/roaming 的文件夾,裏面放到就是npm 的命令, 這時搜了一下npm cache 存放的位置,也是在這個地方,C:\Users\{用戶名}\AppData\Roaming\npm-cache, 找到這個文件夾後, 把整個文件夾全刪除掉了,而後從新安裝npm install, 報了一個錯,rollbackFailedOptional, 嚇死了,由於緩存的文件夾都有刪除了還有問題,那就沒有辦法了,想的是隻能重裝系統了。趕忙搜了一下,是網絡的問題,再從新npm install, 終於安裝成功了,花了一上午的時間,第一次感受到心累npm