今天突然興起,想跑一下之前寫的項目,誰知道居然跑不起來,難道這程序跟人一樣“生氣了”?
這顯然是不可能的,於是就開始了我的鑽牛角尖之路
先復現問題
問題復現
在我執行了
npm install
npm run build
安裝了依賴編譯執行之后
它赫然給我了一個報錯
E:\code\think-php5.1_vue2.x_-base-admin\index\node_modules\electron\index.js:14
throw new Error('Electron failed to install correctly, please delete node_modules/electron and try installing again')
^Error: Electron failed to install correctly, please delete node_modules/electron and try installing again
at getElectronPath (E:\code\think-php5.1_vue2.x_-base-admin\index\node_modules\electron\index.js:14:11)
at Object.(E:\code\think-php5.1_vue2.x_-base-admin\index\node_modules\electron\index.js:18:18)
at Module._compile (node:internal/modules/cjs/loader:1103:14)
at Object.Module._extensions..js (node:internal/modules/cjs/loader:1157:10)
at Module.load (node:internal/modules/cjs/loader:981:32)
at Function.Module. load (node:internal/modules/cjs/loader:822:12)
at Module.require (node:internal/modules/cjs/loader:1005:19)
at require (node:internal/modules/cjs/helpers:102:18)
at Object.(E:\code\think-php5.1_vue2.x -base-admin\index\node_modules\vue-cli-plugin-electron-builder\lib\testWithSpectron.js:2:22)
at Module._compile (node:internal/modules/cjs/loader:1103:14)
仔細看是啥意思呢?哦!原來是electron
組件沒有正確安裝,不應該呀,之前都能跑的怎么現在不能跑了,於是我就去github electron去搜,一搜好家伙,果然有跟我出現一樣情況的
參考:
https://github.com/electron/electron/issues/8466
https://github.com/electron/electron/issues/22480
https://github.com/electron/electron/issues/20994
不過上面分析都是淘寶鏡像的原因,解決方式也是,也是各種各樣,那既然知道了問題,那我就提供一種我的解決方案,不是源有問題嗎,我換個源就得了,所以,下面這篇文章你應該用的上
https://newsn.net/say/npm-registry-faster.html
設置成npmjs
的鏡像
npm config set registry http://registry.npmjs.org/
設置完后重新刪掉node_modules
重新安裝依賴,還是不行
問題找到了,還解決不了了,我還就不信了
使用下面的命令進行調試
npm install --verbose electron --save-dev
這回可好
直接鏡像都訪問不了了
最后通過神奇的網友得知,找到了另一個源
https://registry.npmmirror.com
解決辦法
打開npm的配置文件
npm config edit
在空白處將下面幾個配置添加上去,注意如果有原有的這幾項配置,就修改
registry=https://registry.npmmirror.com
electron_mirror=https://cdn.npmmirror.com/binaries/electron/
electron_builder_binaries_mirror=https://npmmirror.com/mirrors/electron-builder-binaries/
然后關閉該窗口,重啟命令行,刪除node_modules文件夾,並重新安裝依賴
npm install
發現安裝依賴沒問題,一編譯就出問題,全局搜索依賴發現
npm ls -g
好像找到罪魁禍首了,直接找到相關路徑刪除所有全局依賴,用命令也行
再次刪除node_modules文件夾,並執行下面的命令清除緩存
npm cache clean --force
再次安裝
npm install
安裝順利
執行編譯,還是說
納尼這是撒子情況,!!!!!!!!
在我查找所有解決辦法之后,突然瞄向了我的火絨,難道!!!!
在我把火絨退出之后,出現了一下畫面
啊!!舒服,所以最后是火絨的鍋!!!