日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達(dá)者為師

網(wǎng)站首頁 編程語言 正文

Android開發(fā)gradle拉取依賴的加速配置_Android

作者:水牛 ? 更新時(shí)間: 2022-08-15 編程語言

前言

鏡像配置都是常規(guī)操作,必要時(shí)也可以上代理.

自己搭的nexus本質(zhì)也是一種鏡像,可以代理maven中央倉(cāng)庫(kù).

各個(gè)倉(cāng)庫(kù)的測(cè)速,可以使用這個(gè)腳本:

通過測(cè)速,調(diào)整倉(cāng)庫(kù)的順序

apply from: 'https://raw.githubusercontent.com/hss01248/flipperUtil/master/deps/depsLastestChecker.gradle'

情況1 :

每次點(diǎn)擊sync project with gradle files 都去拉取某個(gè)pom,且那個(gè)pom對(duì)應(yīng)的版本真的不存在

耗時(shí):18s

1.去對(duì)應(yīng)gradle緩存里去看這個(gè)庫(kù)在不在: 確實(shí)不在

2 .看com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.46-androidx這個(gè)到底在哪個(gè)倉(cāng)庫(kù)中. 直接先去maven中央倉(cāng)庫(kù)搜索:

發(fā)現(xiàn)根本就沒有這個(gè)版本的庫(kù).

mvnrepository.com/artifact/co…

解決方案:

方案1: 打印依賴樹,看這個(gè)版本誰引入的,exclude掉

方案2: 直接強(qiáng)制指定這個(gè)庫(kù)的版本為項(xiàng)目中實(shí)際用的版本,就不會(huì)去額外請(qǐng)求這個(gè)版本的pom. 如下:

 all {
 ? ? ? ?resolutionStrategy {
 ? ? ? ? ? ?//gradle 刷新加速. 避免每次去刷新com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.46-androidx
 ? ? ? ? ? ?//2.9.46-androidx不存在,所以每次都會(huì)去拉取 ; 
 ? ? ? ? ? ?force 'com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.49-androidx'

情況2:

每次點(diǎn)擊sync project with gradle files或者build,都去拉一堆的pom,且這些pom對(duì)應(yīng)的版本在gradle cache里能找到

每次點(diǎn)擊sync project with gradle files,都要耗時(shí)3-5min,下載一堆已經(jīng)存在的庫(kù)(gradle cache里已經(jīng)有對(duì)應(yīng)的版本)

這時(shí)早就配置好了下面的

all{
  resolutionStrategy{
  // cache dynamic versions for 10 minutes
    cacheDynamicVersionsFor 24, 'hours'
    // don't cache changing modules at all
    cacheChangingModulesFor 24, 'hours'
  }
}

發(fā)現(xiàn)沒有repository里沒有配置mavenlocal, 配置一下就好了

類似這里提到的:

原文鏈接:https://juejin.cn/post/7091265454181711880

欄目分類
最近更新