zl程序教程

您现在的位置是:首页 >  移动开发

当前栏目

【Android Gradle 插件】Android 依赖管理 ① ( 依赖库匹配 | 依赖库查找顺序及路径 | Gradle 资源库 )

Androidgradle依赖插件 管理 路径 查找 匹配
2023-09-14 09:07:28 时间





一、依赖库匹配



依赖库匹配 : 依赖库由三部分组成

  • 依赖库分组
  • 依赖库名称
  • 依赖库版本号

只有三者都对上 , 依赖库才能匹配上 , 如

dependencies {
	implementation androidx.appcompat:appcompat:1.3.1'
}

依赖库分组为 androidx.appcompat , 依赖库名称为 appcompat , 依赖库版本号为 1.3.1 , 三者由冒号隔开 ;





二、依赖库查找顺序及路径



Android 依赖库查找路径 :

首先 , 查找 本地的 Gradle 缓存依赖库 , 如果找到则直接使用该依赖库 , 进行 Gradle 构建 ; 本地依赖库的缓存路径为 " C:\Users\用户名.gradle\caches\modules-2\files-2.1 " , 如下图所示 , Gradle 构建过程中 , 如果发现本地没有缓存依赖库 , 则自动将依赖库缓存到该目录中 ; 下图中的 Gradle 依赖缓存目录为 C:\Users\octop.gradle\caches\modules-2\files-2.1 , octop 为 Windows 系统用户名 ;

在这里插入图片描述
然后 , 如果在 本地 Gradle 依赖库缓存中没有找到该依赖库 , 则到 远程仓库中下载 , 远程仓库在根目录下的 build.gradle 中配置 , 一般配置 google() , mavenCentral() , jcenter() ;

allprojects {
    repositories {
        google()
        mavenCentral()
        jcenter() // Warning: this repository is going to shut down soon
    }
}

Gradle 构建过程中依赖管理如下 :
在这里插入图片描述





三、Gradle 资源库



Gradle 构建过程中 , 存储依赖库的地方称为 Gradle 资源库 , 有两种形式 :

  • 本地库 : 一般是 " C:\Users\用户名.gradle\caches\modules-2\files-2.1 " 目录 ;
  • 远程库 : 一般是 google() , mavenCentral() , jcenter() 对应的 Maven 仓库 , 也可以自己设置自建的 Maven 私服地址 ;

Gradle 构建时 , 定位依赖库的过程 , 叫做 依赖解析 ;

  • 首先 , 查找本地库 ;
  • 然后 , 查找远程库 ;

依赖解析完毕后 , 如果是在远程库中下载的依赖库 , 则将其 缓存到本地库中 , 之后再次构建时 , 就不需要从远程库中下载该依赖库了 ;

定位依赖库时 , 根据 依赖库分组 , 依赖库名称 , 依赖库版本号 , 在 Gradle 资源库中定位依赖库 ;