記一次詭異的vue構建npm chromedriver錯誤

1、前序說明

搞定問題就馬上寫了,比較倉促,寫的出錯的地方還請見諒,歡迎指正,有好的其他方法也歡迎提供給我,排版也沒去在意了。
按照問題排查順序編寫,解決方式直接看最後—直接官方原生【解決問題】
報錯問題見最後幾張圖片

2、項目來源

開發項目基於renren-fast-vue框架,可以參考開源項目
項目地址
git clone https://github.com/daxiongYang/renren-fast-vue.git
原生安裝依賴
npm install
啓動服務
npm run dev

3、問題與排查

  1. npm install–save安裝這一步,驅動一直下不來,然後用淘寶源同樣也一直失敗,用了淘寶源去下載的是2.45.0版本的。本地的2.27左右的版本,但問題不在這,因爲查閱一番網上沒有人提到有這種坑。
  2. 開始直接install報錯之後,嘗試直接運行npm run
    dev,結果出現一堆nass之類的錯誤,但是實際上仍然是驅動問題,因爲install那一步就大量出錯了。
  3. 所以問題縮小到驅動下載失敗和install驅動失敗這兩處去着手。
    怪異的是:用淘寶源安裝的另外兩臺同事的電腦都能正常install和運行。

3.1 折騰淘寶源安裝依賴

直接普通淘寶源安裝

npm install -g cnpm --registry=https://registry.npm.taobao.org
cnpm install
啓動服務
npm run dev

有些人的,說不定你們的機器直接淘寶源確實可以。

我的這樣確實不行,然後嘗試下面一種配置,

3.2 修改配置文件

1.方法一,sass_binary_site,chromedriver_cdnurl在系統環境變量配置,其實就是自己下載比如到D:\chromedriven.exe。然後環境變量指定一下就行了,結果也是不行的。
2.方法二,修改npmrc文件,去c盤的用戶的admin下面修改node文件名.npmrc,如果不好搜建議下一個搜索軟件everything,原本的npm官方獲取地址是 registry=https://registry.npmjs.org/
然後修改.npmrc

    registry=https://registry.npm.taobao.org 
    phantomjs_cdnurl=https://npm.taobao.org/dist/phantomjs 
    chromedriver_cdnurl=https://npm.taobao.org/mirrors/chromedriver 
    sass_binary_site=http://npm.taobao.org/mirrors/node-sass 
    ELECTRON_MIRROR=http://npm.taobao.org/mirrors/electron

然後重新install,仍然不可以,

3.3 單獨安裝chromedriven驅動

問了前同事羣說單獨安裝看行不行,
https://blog.csdn.net/gobravery/article/details/79156203
很多人的確實這樣可以

npm install chromedriver --chromedriver_cdnurl=http://cdn.npm.taobao.org/dist/chromedriver

然而我的也是不行。可能是採坑越多,成長越快,我還是得高興一下安慰自己。

4、直接官方原生【解決問題】

這裏說明下,其實我用了一次淘寶源是正常的,就是重新安裝了下nodejs,然後cnpm啥的都還在,直接install然後接着運行竟然都沒報錯。
然後現在放棄了淘寶源了,那麼說說接下來吧。
我有全局【必須是全局代理】anyconnect可以去拉官方的鏡像,所以這時候強制清理緩存之後,去安裝發現有不一樣的報錯。
提示error operation not permitted。
估計確實要用管理員身份的命令行,這個很明顯,馬上用了【管理員身份運行,然後又是驅動報錯,一堆,這時候,我再執行一次install,不刪除node_module的情況,竟然報錯更加少了】!這時候我突然發現一句,may not problem ,可能不是問題,臥槽!這句話很關鍵啊,這個時候報我嘗試直接run dev,竟然成功跑起來了附上我的操作

1、直接用了國外鏡像源,使用anyconnect,
2、管理員身份運行cmd。
###如果你覺得你多次執行各種命令導致node_module已經被你整的很亂了,那麼直接強制清理緩存
3、npm cache clean --force    
### 基本每次錯誤認爲比較多的時候,就刪除node_module再重新install
4、rm -rf node_modules
###如果installl過程中出現報錯很詭異或者根本不應該報錯,那麼不妨再多執行一兩次,我就是多執行了一兩次發現最後錯誤只有一點點驅動那個問題了,然後還看見網上有說這個錯誤其實不影響運行,所以最後豁然開朗,跳出有錯就直接刪node_module又install的坑了。
5、npm install -save
6、如果報錯,直接copy chromedriver那個目錄替換,再繼續install,剩下一點錯誤疑似沒問題的時候直接run
###只有一點點錯誤或者沒有錯誤了,可以直接run了
7、npm run dev
我兩臺機器都不成功的,這個搞一波都成功了,
方案二:這種方式貌似沒有成功,我直接copy了另一個成功情況下的node_module下的chromedriven包,然後沒注意是不是也成功了多次install且不去刪除node_module的情況(待驗證)

附上我坎坷的報錯圖片
在這裏插入圖片描述

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章