Android Studio通過Artifactory搭建本地倉(cāng)庫(kù)優(yōu)化編譯速度的方法
Android Studio 編譯速度慢,一般來說,原因有下面幾個(gè)。
Gradle下載慢 依賴庫(kù)下載慢 依賴庫(kù)使用'+'(使用最新的),每次都需要去查找新的(盡量不適用這種方式)這里,大部分的庫(kù),我們可以通過阿里云代理倉(cāng)庫(kù)。但是,如果有我們自己的私有庫(kù)或者插件的話??隙ú幌M诺桨⒗镌粕狭?。
這個(gè)時(shí)候,我們就需要建立,我們自己的本地倉(cāng)庫(kù),讓私有倉(cāng)庫(kù),依賴阿里云的私有倉(cāng)庫(kù)。
依賴關(guān)系,如下圖
這樣,既保證了我們私有庫(kù)的安全性,又讓我們的依賴庫(kù)也享受到了阿里云代理倉(cāng)庫(kù)的便利。
通過Artifactory搭建本地倉(cāng)庫(kù)可以參考:架構(gòu)師教程Artifactory破解步驟。這里就不說明了。
下面,我們主要說明的是本地倉(cāng)庫(kù)的配置及在項(xiàng)目中的引用。
一,本地倉(cāng)庫(kù)的創(chuàng)建
這里又分為2個(gè)部分:
依賴本地的庫(kù)比如,Gradle的版本,或者自己寫的Gradle插件等等
依賴遠(yuǎn)程的庫(kù)比如,OKHttp,Retrofit等等第三方庫(kù)
創(chuàng)建虛擬組這樣的話,方便我們的引入。不用每個(gè)庫(kù)都引入進(jìn)來。
1,創(chuàng)建依賴本地的庫(kù)
點(diǎn)擊左側(cè)的Admin→local,進(jìn)入Local Repositories。
點(diǎn)擊右上角的按鈕(New)
選擇Maven,然后,填寫Repository key,我們就起一個(gè)android_local(自己定義就好)。
然后,點(diǎn)擊Save & Finish,到這里就創(chuàng)建了一個(gè)本地的Maven倉(cāng)庫(kù)。
然后,我們?cè)贚ocal Repositories下面就看到了,我們創(chuàng)建的本地庫(kù)。
下面,我們就要把我們下載好的Gradle,放到這個(gè)本地倉(cāng)庫(kù)。
點(diǎn)擊左側(cè)欄第2個(gè)按鈕,Artifact Repository Browser
選擇,我們的android_local的maven庫(kù),點(diǎn)擊右側(cè)Deploy,把我們的Gradle的zip上傳上去就可以了
如下圖
上傳完成后,我們?cè)谧髠?cè)的android_local下面,就看到了這個(gè)Gradle的zip包
這里,有個(gè)東西需要配置一下。倉(cāng)庫(kù)默認(rèn)上傳文件大小是100M,我們需要改大一些,不然,上傳會(huì)失敗。
點(diǎn)擊左側(cè)的Amin→General Configuration 。
修改File Upload Max Size (MB) ,這個(gè)選項(xiàng),我們改成400M,點(diǎn)擊Save。
如下圖,修改完后,再上傳我們的Gradle的zip就沒有問題了。
到這里,我們建立的本地的倉(cāng)庫(kù)就配置完成了
2,依賴遠(yuǎn)程的庫(kù)
我們項(xiàng)目除了Gradle以外,開發(fā)時(shí)會(huì)用到很多的第三方庫(kù),這個(gè)時(shí)候,我們還需要配置一個(gè)依賴遠(yuǎn)程的倉(cāng)庫(kù)。
根據(jù)上面的流程,我們的遠(yuǎn)程倉(cāng)庫(kù),需要依賴阿里云的代理倉(cāng)庫(kù)。這里先創(chuàng)建一個(gè)jcenter倉(cāng)庫(kù)。
首先,點(diǎn)擊左側(cè)的Admin?→Remote
然后,跟本地倉(cāng)庫(kù)一樣,點(diǎn)擊右側(cè)的New按鈕
我們填寫一個(gè)repository key叫aliyun_maven。并填寫地址。
填寫完成后,點(diǎn)擊右下角的Save & Finish。
就創(chuàng)建好了,我們的jcenter倉(cāng)庫(kù)。
我們還要?jiǎng)?chuàng)建google的本地倉(cāng)庫(kù),最好再創(chuàng)建一個(gè)public的倉(cāng)庫(kù)(防止,其他的地方找不到)
創(chuàng)建完成后,我們看下,我們的遠(yuǎn)程倉(cāng)庫(kù)列表
可以看到,我們的3個(gè)遠(yuǎn)程倉(cāng)庫(kù)都創(chuàng)建好了。
3,創(chuàng)建虛擬組
上面,我們把Gradle的文件倉(cāng)庫(kù)和依賴庫(kù)依賴的google(),jcenter()倉(cāng)庫(kù),都創(chuàng)建好了。
如果,我們每個(gè)都依賴到項(xiàng)目的話,很不方便。首先,需要寫很多;其次,就是如果再添加其他倉(cāng)庫(kù)的話,我們也需要都次都改動(dòng),這個(gè)地方。
這里,我們就創(chuàng)建一個(gè)虛擬組。這樣,我們的項(xiàng)目,只需要依賴一個(gè)虛擬組,讓虛擬組把上面的倉(cāng)庫(kù)都添加進(jìn)去就可以了。
首先,點(diǎn)擊左側(cè)的Admin?→Virtual。
其次,還是點(diǎn)擊右上角的New按鈕。填寫Repository key,把上面的aliyun_jcenter,android_local等等倉(cāng)庫(kù)添加進(jìn)去。
最后,點(diǎn)擊Save & Finish
這樣,我們的組就創(chuàng)建好了。
最后,看下我們所有創(chuàng)建的倉(cāng)庫(kù)。
二,使用本地倉(cāng)庫(kù)
上面的本地倉(cāng)庫(kù)創(chuàng)建好以后,我們就不用直接依賴google()等倉(cāng)庫(kù)了。
修改我們的項(xiàng)目配置。
1, gradle?→wrapper?gradle-wrapper.properties 下的gradle下載地址
#distributionUrl=https://services.gradle.org/distributions/gradle-4.10.1-all.zipdistributionUrl=http://localhost:8081/artifactory/android_local/gradle-4.10.1-all.zip
這里,我們直接依賴我們的本地倉(cāng)庫(kù)的地址。
2, 修改項(xiàng)目下的build.gradle
buildscript { repositories {// google()// jcenter() maven{ url ’http://localhost:8081/artifactory/android_depend/’ } } dependencies { classpath ’com.android.tools.build:gradle:3.3.1’ }}allprojects { repositories {// google()// jcenter() maven{ url ’http://localhost:8081/artifactory/android_depend/’ } }}
這里,我們看到我們不在直接依賴jcenter(),google()倉(cāng)庫(kù)了。而是依賴,我們自己的本地倉(cāng)庫(kù)的那個(gè)虛擬組。
這樣,以后我們有自己的私有庫(kù)或者插件的話,就保證了安全性。我們本地倉(cāng)庫(kù)依賴了阿里云的代理倉(cāng)庫(kù)。也不用擔(dān)心下載不下來的問題了。
到此這篇關(guān)于Android Studio通過Artifactory搭建本地倉(cāng)庫(kù)優(yōu)化編譯速度的方法的文章就介紹到這了,更多相關(guān)Android Studio Artifactory搭建本地倉(cāng)庫(kù) 內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. 詳細(xì)分析css float 屬性以及position:absolute 的區(qū)別2. ASP中格式化時(shí)間短日期補(bǔ)0變兩位長(zhǎng)日期的方法3. ASP基礎(chǔ)知識(shí)Command對(duì)象講解4. xpath簡(jiǎn)介_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理5. 得到XML文檔大小的方法6. PHP設(shè)計(jì)模式中工廠模式深入詳解7. ASP刪除img標(biāo)簽的style屬性只保留src的正則函數(shù)8. PHP循環(huán)與分支知識(shí)點(diǎn)梳理9. html小技巧之td,div標(biāo)簽里內(nèi)容不換行10. ASP實(shí)現(xiàn)加法驗(yàn)證碼
