Android Studio通过Artifactory搭建本地仓库优化编译速度的方法

时间:2022-07-27
本文章向大家介绍Android Studio通过Artifactory搭建本地仓库优化编译速度的方法,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

Android Studio 编译速度慢,一般来说,原因有下面几个。

  • Gradle下载慢
  • 依赖库下载慢
  • 依赖库使用”+”(使用最新的),每次都需要去查找新的(尽量不适用这种方式)

这里,大部分的库,我们可以通过阿里云代理仓库。 但是,如果有我们自己的私有库或者插件的话。肯定不希望放到阿里云上了。

这个时候,我们就需要建立,我们自己的本地仓库,让私有仓库,依赖阿里云的私有仓库。

依赖关系,如下图

这样,既保证了我们私有库的安全性,又让我们的依赖库也享受到了阿里云代理仓库的便利。

通过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搭建本地仓库 内容请搜索ZaLou.Cn以前的文章或继续浏览下面的相关文章希望大家以后多多支持ZaLou.Cn!