npm打包失敗排查的全過程
gitlab上的ci打包失敗,報錯權限不足
行吧,那我手動用root看看是否能打包成功
還是打包失敗,報錯
sh: 1: vue-cli-service: not found
沒有找到node_modules下的vue-cli-service
使用find命令查找項目目錄 發(fā)現并沒有找到這個命令生產,難道是安裝依賴的時候,沒有成功嗎?
我發(fā)現,項目目錄下,并沒有像往常一樣生成一個node_modules目錄。難道是把依賴安裝到全局了嗎?
1.查看是否安裝有全局依賴
##查看全局下,是否有自己安裝的包 npm root -g /data/opt/node-v14.17.6-linux-x64/lib/node_modules
顯示有全局依賴路徑
2.查看npm配置信息
## 查看npm配置 npm config list ; "user" config from /root/.npmrc registry = "https://registry.npm.taobao.org/" ; node bin location = /data/opt/node-v14.17.6-linux-x64/bin/node ; node version = v14.17.6 ; npm local prefix = /home/gitlab-runner/builds/abs-d ; npm version = 8.12.2 ; cwd = /home/gitlab-runner/builds/abs-d ; HOME = /root ; Run `npm config ls -l` to show all defaults.
global = false,意思局部安裝,如果全局的話為true
3.修改配置信息,不知道為什么我這里設置局部失敗,,,不管了
npm config set global false ## 設置全局為false npm config list ; "user" config from /root/.npmrc false = "" global = true registry = "https://registry.npm.taobao.org/" ; node bin location = /data/opt/node-v14.17.6-linux-x64/bin/node ; node version = v14.17.6 ; npm local prefix = /home/gitlab-runner/builds/abs-d ; npm version = 8.12.2 ; cwd = /home/gitlab-runner/builds/abs-d ; HOME = /root ; Run `npm config ls -l` to show all defaults.
4.重新npm install 安裝依賴
npm install --global npm changed 14 packages in 2s 11 packages are looking for funding run `npm fund` for details
沒有報錯,但是依舊是沒有node_module目錄
項目目錄下生成了一個 package-lock.json 文件,將文件刪除再進行強制清除緩存
rm -f package-lock.json npm cache clean --force npm WARN using --force Recommended protections disabled.
清除緩存的時候又報錯了...行吧兵來將擋吧。
網上的說法是:因為npm版本太高而導致。指定npm版本安裝
npm install npm@6.14.10 -g removed 63 packages, and changed 97 packages in 5s 3 packages are looking for funding run `npm fund` for details
再確定刪除package-lock.json下強制清除緩存
npm cache clean --force npm WARN using --force I sure hope you know what you are doing.
得了 沒有報錯了,npm install試試
npm install npm WARN lifecycle vue-demi@0.13.1~postinstall: cannot run in wd vue-demi@0.13.1 node ./scripts/postinstall.js (wd=/home/gitlab-runner/builds/aas-d/node_modules/vue-demi) npm WARN lifecycle core-js@3.23.1~postinstall: cannot run in wd core-js@3.23.1 node -e "try{require('./postinstall')}catch(e){}" (wd=/home/gitlab-runner/builds/aas-d/node_modules/core-js) + aas-b@0.1.0 added 205 packages from 139 contributors and updated 1 package in 33.812s ╭────────────────────────────────────────────────────────────────╮ │ │ │ New major version of npm available! 6.14.10 -> 8.12.2 │ │ Changelog: https://github.com/npm/cli/releases/tag/v8.12.2 │ │ Run npm install -g npm to update! │ │ │ ╰────────────────────────────────────────────────────────────────╯
行了終于有node_module目錄了
總結
到此這篇關于npm打包失敗排查的文章就介紹到這了,更多相關npm打包失敗排查內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
vue+elementui(對話框中form表單的reset問題)
這篇文章主要介紹了vue+elementui(對話框中form表單的reset問題),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-05-05Vue中使用?Aplayer?和?Metingjs?添加音樂插件的方式
這篇文章主要介紹了Vue中使用?Aplayer?和?Metingjs?添加音樂插件,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-08-08