您好,登錄后才能下訂單哦!
Android Studio 編譯速度慢,一般來說,原因有下面幾個。
這里,大部分的庫,我們可以通過阿里云代理倉庫。
但是,如果有我們自己的私有庫或者插件的話。肯定不希望放到阿里云上了。
這個時候,我們就需要建立,我們自己的本地倉庫,讓私有倉庫,依賴阿里云的私有倉庫。
依賴關系,如下圖
這樣,既保證了我們私有庫的安全性,又讓我們的依賴庫也享受到了阿里云代理倉庫的便利。
通過Artifactory搭建本地倉庫可以參考:架構師教程Artifactory破解步驟。這里就不說明了。
下面,我們主要說明的是本地倉庫的配置及在項目中的引用。
一,本地倉庫的創建
這里又分為2個部分:
依賴本地的庫
比如,Gradle的版本,或者自己寫的Gradle插件等等
依賴遠程的庫
比如,OKHttp,Retrofit等等第三方庫
創建虛擬組
這樣的話,方便我們的引入。不用每個庫都引入進來。
1,創建依賴本地的庫
點擊左側的Admin→local,進入Local Repositories。
點擊右上角的按鈕(New)
選擇Maven,然后,填寫Repository key,我們就起一個android_local(自己定義就好)。
然后,點擊Save & Finish,到這里就創建了一個本地的Maven倉庫。
然后,我們在Local Repositories下面就看到了,我們創建的本地庫。
下面,我們就要把我們下載好的Gradle,放到這個本地倉庫。
點擊左側欄第2個按鈕,Artifact Repository Browser
選擇,我們的android_local的maven庫,點擊右側Deploy,把我們的Gradle的zip上傳上去就可以了
如下圖
上傳完成后,我們在左側的android_local下面,就看到了這個Gradle的zip包
這里,有個東西需要配置一下。倉庫默認上傳文件大小是100M,我們需要改大一些,不然,上傳會失敗。
點擊左側的Amin→General Configuration
。
修改File Upload Max Size (MB)
,這個選項,我們改成400M,點擊Save。
如下圖,修改完后,再上傳我們的Gradle的zip就沒有問題了。
到這里,我們建立的本地的倉庫就配置完成了
2,依賴遠程的庫
我們項目除了Gradle以外,開發時會用到很多的第三方庫,這個時候,我們還需要配置一個依賴遠程的倉庫。
根據上面的流程,我們的遠程倉庫,需要依賴阿里云的代理倉庫。這里先創建一個jcenter倉庫。
首先,點擊左側的Admin–→Remote
然后,跟本地倉庫一樣,點擊右側的New按鈕
我們填寫一個repository key叫aliyun_maven。并填寫地址。
填寫完成后,點擊右下角的Save & Finish。
就創建好了,我們的jcenter倉庫。
我們還要創建google的本地倉庫,最好再創建一個public的倉庫(防止,其他的地方找不到)
創建完成后,我們看下,我們的遠程倉庫列表
可以看到,我們的3個遠程倉庫都創建好了。
3,創建虛擬組
上面,我們把Gradle的文件倉庫和依賴庫依賴的google(),jcenter()倉庫,都創建好了。
如果,我們每個都依賴到項目的話,很不方便。首先,需要寫很多;其次,就是如果再添加其他倉庫的話,我們也需要都次都改動,這個地方。
這里,我們就創建一個虛擬組。這樣,我們的項目,只需要依賴一個虛擬組,讓虛擬組把上面的倉庫都添加進去就可以了。
首先,點擊左側的Admin–→Virtual。
其次,還是點擊右上角的New按鈕。填寫Repository key,把上面的aliyun_jcenter,android_local等等倉庫添加進去。
最后,點擊Save & Finish
這樣,我們的組就創建好了。
最后,看下我們所有創建的倉庫。
二,使用本地倉庫
上面的本地倉庫創建好以后,我們就不用直接依賴google()等倉庫了。
修改我們的項目配置。
1, gradle–→wrapper–gradle-wrapper.properties 下的gradle下載地址
#distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.1-all.zip distributionUrl=http\://localhost:8081/artifactory/android_local/gradle-4.10.1-all.zip
這里,我們直接依賴我們的本地倉庫的地址。
2, 修改項目下的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()倉庫了。而是依賴,我們自己的本地倉庫的那個虛擬組。
這樣,以后我們有自己的私有庫或者插件的話,就保證了安全性。我們本地倉庫依賴了阿里云的代理倉庫。也不用擔心下載不下來的問題了。
到此這篇關于Android Studio通過Artifactory搭建本地倉庫優化編譯速度的方法的文章就介紹到這了,更多相關Android Studio Artifactory搭建本地倉庫 內容請搜索億速云以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持億速云!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。