標籤:設定 研究 外網 groovy 地址 本機快取 har 保密 ges
在Android Studio項目中,預設的遠程倉庫為jcenter,如果在項目引用了一些類庫,Gradle構建程式的時候會將這些依賴類庫從jcenter網站下載到本地,如我們在 build.gradle使用了以下依賴:
dependencies { compile ‘de.hdodenhof:circleimageview:2.1.0‘}
下載的地址為:https://jcenter.bintray.com/de/hdodenhof/circleimageview/2.1.0/
本機快取地址為:C:\Users\xxx(使用者名稱)\.gradle\caches\modules-2\files-2.1\de.hdodenhof\circleimageview\2.1.0
這三個目錄依次存放檔案circleimageview-2.1.0.pom,circleimageview-2.1.0.aar,circleimageview-2.1.0-sources.jar
如果沒有網路或我們設定Gradle為offline模式時,Gradle就會使用這些快取檔案,不再串連jcenter去擷取這些依賴包
很多公司的辦公網路,考慮到安全,保密等因素,是不允許串連到外網或無法訪問到jcenter,那麼這時候如何在內網使用Gradle構建Android程式呢?這是個棘手的問題啊,難道讓我放棄心愛的butterknife,RxJava...?難道讓我複製一堆jar包到libs目錄下?
聰明的程式員顯然是不會這麼做的,研究了一下,發現在內網環境下,我們依然可以很愉快的使用Gradle構建Android項目
此處假設外網電腦A,內網電腦B,如我們需要在項目中使用circleimageview,那麼將A中緩衝的circleimageview類庫複製到B中Android SDK extras目錄下對應的目錄即可,
即將A中緩衝的circleimageview-2.1.0.pom,circleimageview-2.1.0.aar,circleimageview-2.1.0-sources.jar檔案複製到B中xxx(android sdk目錄)\extras\m2repository\de\hdodenhof\circleimageview\2.1.0目錄下
如果我們在項目中使用了butterknife,如下:
dependencies { compile ‘com.jakewharton:butterknife:8.4.0‘ annotationProcessor ‘com.jakewharton:butterknife-compiler:8.4.0‘}
那麼我們在內網中如何使用butterknife呢?由於butterknife項目引用了javapoet,auto-common,auto-service類庫,我們也需要把這些類庫放到extras目錄下
在內網使用Gradle構建Android Studio項目