1. 程式人生 > >快速解決flutter中package包版本衝突問題

快速解決flutter中package包版本衝突問題

 

當你的專案需要安裝的依賴包越多,遇到包衝突可能性就越大,尤其是當依賴的包有重大更新時。比如下圖:

上面可以看到是xml跟intl_translation兩個包有衝突,因為他們依賴兩個不同的petitparser包。開啟pubspec .yaml看到:

可能解決辦法是去 pub.dartlang.org手動嘗試歷史版本的包,這麼麻煩的嗎?有沒有別的解決辦法呢?當然。

解決辦法:

通過將兩者依賴包版本號改為:any,點選flutter packages get重新獲取包,這樣就會自動去匹配適合兩者的包,執行結果如下:

這樣就結束了嗎?當然不是。any相當於給依賴鬆綁,你不清楚它依賴的具體版本號,正常開發每個專案依賴的包版本肯定需要具體明確,不然過後可能又會遇到災難錯誤。所以,在根目錄下找到pubspec.lock.yarm檔案,看到

 

 可以看到這裡寫出了修復兩者依賴衝突的對應版本號,這時重新去將any改為上面看到的版本號就可以了~

完~