您好,登錄后才能下訂單哦!
今天小編給大家分享一下Android開發gradle拉取依賴的加速如何配置的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
鏡像配置都是常規操作,必要時也可以上代理.
自己搭的nexus本質也是一種鏡像,可以代理maven中央倉庫.
各個倉庫的測速,可以使用這個腳本:
通過測速,調整倉庫的順序
apply from: 'https://raw.githubusercontent.com/hss01248/flipperUtil/master/deps/depsLastestChecker.gradle'
每次點擊sync project with gradle files 都去拉取某個pom,且那個pom對應的版本真的不存在
耗時:18s
1.去對應gradle緩存里去看這個庫在不在: 確實不在
2 .看com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.46-androidx這個到底在哪個倉庫中. 直接先去maven中央倉庫搜索:
發現根本就沒有這個版本的庫.
mvnrepository.com/artifact/co…
解決方案:
方案1: 打印依賴樹,看這個版本誰引入的,exclude掉
方案2: 直接強制指定這個庫的版本為項目中實際用的版本,就不會去額外請求這個版本的pom. 如下:
all { resolutionStrategy { //gradle 刷新加速. 避免每次去刷新com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.46-androidx //2.9.46-androidx不存在,所以每次都會去拉取 ; force 'com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.49-androidx'
每次點擊sync project with gradle files或者build,都去拉一堆的pom,且這些pom對應的版本在gradle cache里能找到
每次點擊sync project with gradle files,都要耗時3-5min,下載一堆已經存在的庫(gradle cache里已經有對應的版本)
這時早就配置好了下面的
all{ resolutionStrategy{ // cache dynamic versions for 10 minutes cacheDynamicVersionsFor 24, 'hours' // don't cache changing modules at all cacheChangingModulesFor 24, 'hours' } }
發現沒有repository里沒有配置mavenlocal, 配置一下就好了
類似這里提到的:
以上就是“Android開發gradle拉取依賴的加速如何配置”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。