【Android Gradle 插件】更新依赖方式,同时解决github三方库引用无法使用问题

这篇具有很好参考价值的文章主要介绍了【Android Gradle 插件】更新依赖方式,同时解决github三方库引用无法使用问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

首先看一下完整的 settings.gradle 依赖介绍

/*
pluginManagement 脚本块,用于配置Gradle插件的Maven仓库,配置的是构建过程中,使用的仓库 ;
pluginManagement 脚本块中的 repositories 配置 , 对应之前的 buildscript 中的 repositories 配置 ;
*/
pluginManagement {
    repositories {
        google()
        mavenCentral()
        gradlePluginPortal()
    }
}
/*
dependencyResolutionManagement 脚本块,用于配置依赖的Maven仓库 ,配置的是工程或模块下的依赖使用的仓库 ;
在 dependencyResolutionManagement 脚本块中定义

repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) 代码的含义是 解析依赖时 , 只能使用本脚本块中的 Maven 仓库 , 不能使用 Module 子项目中的依赖 ;
repositoriesMode 模式有两种 :
RepositoriesMode.PREFER_PROJECT : 解析依赖库时 , 优先使用本地仓库 , 本地仓库没有该依赖 , 则使用远程仓库 ;
RepositoriesMode.FAIL_ON_PROJECT_REPOS : 解析依赖库时 , 强行使用远程仓库 , 不管本地仓库有没有该依赖库 ;

dependencyResolutionManagement 脚本块中的 repositories 配置 , 对应之前的 allprojects 中的 repositories 配置 ;
*/
dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()
    }
}
rootProject.name = "My Application"
include ':app'

目录

首先看一下完整的 settings.gradle 依赖介绍

1、Maven 远程仓库配置

2、目录配置

3、完整代码示例

二、根目录下 build.gradle 构建脚本分析


1、Maven 远程仓库配置

pluginManagement 脚本块 ,

  • 用于 配置 Gradle 插件的 Maven 仓库 ,
  • 配置的是 构建过程 中 , 使用的仓库 ;

dependencyResolutionManagement 脚本块 ,

  • 用于 配置 依赖 的 Maven 仓库 ,
  • 配置的是 工程 或 模块 下的依赖使用的仓库 ;

在 dependencyResolutionManagement 脚本块 中 定义的 repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) 代码的含义是 解析依赖时 , 只能使用本脚本块中的 Maven 仓库 , 不能使用 Module 子项目中的依赖 ;

repositoriesMode 模式有两种 :

  • RepositoriesMode.PREFER_PROJECT : 解析依赖库时 , 优先使用本地仓库 , 本地仓库没有该依赖 , 则使用远程仓库 ;
  • RepositoriesMode.FAIL_ON_PROJECT_REPOS : 解析依赖库时 , 强行使用远程仓库 , 不管本地仓库有没有该依赖库 ;

参考之前的 【Android Gradle 插件】Android 依赖管理 ② ( 为工程配置依赖仓库 | 为工程构建添加依赖仓库 | classpath 引入依赖库 | 配置依赖仓库 ) 博客中的配置 ,

  • pluginManagement 脚本块中的 repositories 配置 , 对应之前的 buildscript 中的 repositories 配置 ;
  • dependencyResolutionManagement 脚本块中的 repositories 配置 , 对应之前的 allprojects 中的 repositories 配置 ;

gradle刷新依赖,android,github,gradle

2、目录配置

settings.gradle 构建脚本中的目录设置 :

  • rootProject.name 用于指定工程根目录 , 在该目录下有一个 build.gradle 构建脚本 , 声明后会自动执行该构建脚本 ;
	rootProject.name = "LiveDataDemo"
  • include 用于指定子项目 , 在子项目中也有一个 build.gradle 构建脚本 , 声明后会自动执行该构建脚本 ;
	include ':app'

3、完整代码示例

完整代码示例 :

pluginManagement {
    repositories {
        gradlePluginPortal()
        google()
        mavenCentral()
    }
}
dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()
    }
}
rootProject.name = "LiveDataDemo"
include ':app'

二、根目录下 build.gradle 构建脚本分析


根目录下 build.gradle 构建脚本如下 :

// Top-level build file where you can add configuration options common to all sub-projects/modules.
plugins {
    id 'com.android.application' version '7.3.1' apply false
    id 'com.android.library' version '7.3.1' apply false
    id 'org.jetbrains.kotlin.android' version '1.7.20' apply false
}

在 plugins 中使用

id 'com.android.application' version '7.3.1' apply false

配置 Gradle 插件 , 下面分析每个配置的含义 :

  • 引入 com.android.application 插件 ,
  • version '7.3.1' 说明引入插件的版本号 ,
  • apply false 表示当前不会马上引用该插件 , 在 Module 子项目 中使用到该插件时 , 才能正式应用 ;

在此处 主要是为了说明 Gradle 插件的版本 , 没有其它含义 ;

如 : 在 Module 子项目中 , 有如下配置 :

plugins {
    id 'com.android.application'
    id 'org.jetbrains.kotlin.android'
}

则会立刻应用 com.android.applicationorg.jetbrains.kotlin.android Gradle 插件 , 此处就不会有插件版本了 ;

在之前的 build.gradle 配置 中 , 在 " buildscript / dependencies / classpath " 中 , 配置 Android Gradle 插件版本 是 4.2.1 , 也就是

  • com.android.application
  • com.android.library

插件 的 版本 ;文章来源地址https://www.toymoban.com/news/detail-571851.html

buildscript {
    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:4.2.1'
    }
}

到了这里,关于【Android Gradle 插件】更新依赖方式,同时解决github三方库引用无法使用问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Android——gradle插件配置方式——dependencies和plugins

    我们知道Android studio 需要gradle插件进行构建和编译,随着AGP的升级,引入gradle插件也发生了变化。旧版本通过build.gradle文件中dependencies代码块引入,新版本通过plugins代码块引入 参考: 【1】Gradle学习笔记之插件_gradle 添加插件-CSDN博客 【2】仓库服务 【3】关于Gradle新版插件依

    2024年02月02日
    浏览(41)
  • 【错误记录】Android 编译报错 ( Could not resolve xxx | 手动下载依赖库并进行本地配置 Gradle 依赖的解决方案 | 构建 Maven 依赖下载路径 )

    编译 Android Studio 项目时 , 报如下错误 , 下载依赖库失败 ; 报错信息 : 下面是 当前 Android 项目的 Gradle 配置中的 Maven 仓库 ; 其中使用 maven { url \\\"https://repo.spring.io/plugins-release/\\\" } 配置的 Maven 仓库就是对应的地址 ; 使用 google() 函数配置的 Maven 仓库地址 是 https://maven.google.com/ , 可

    2024年04月15日
    浏览(71)
  • android studio gradle build running慢 卡住不动 失败 原因与解决方式

    主要原因是 gradle 构建时无法从 网络 获取需要的包或库。 将国外库替换为阿里云镜像库。 例如 google 对应的库是 maven { url ‘https://maven.aliyun.com/repository/google’ }

    2024年02月11日
    浏览(71)
  • 如何查看Android 包依赖关系&gradle依赖管理

    关于作者:CSDN内容合伙人、技术专家, 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 ,擅长java后端、移动开发、商业变现、人工智能等,希望大家多多支持。 我们继续总结学习,温故知新。 本文讲述如何查看 android 依赖库关系。 Tasks-help-dependencies 可以看项

    2024年01月18日
    浏览(57)
  • Android Gradle 三方依赖管理

    Gradle 的依赖管理是一个从开始接触 Android 开发就一直伴随着我们的问题(作者是Android开发,仅以此为例),从最初的 没有统一管理 到 通过.gradle或gradle.properties管理 ,再到 Kotlin 出现之后使用 buildSrc 管理 以及在这基础上优化的 Composing Builds , Gradle 依赖管理一直在不断的发

    2024年02月09日
    浏览(49)
  • 【Android Gradle 插件】Gradle 构建机制 ⑤ ( 在 Android Studio 中查看 Android Gradle 插件源码 )

    选择 \\\" 菜单栏 / File / New / New Project… \\\" 选项 , 将根目录下的 build.gradle 构建脚本中的  dependencies  依赖中的   然后进入 app 模块目录 , 删掉除 build.gradle 脚本之外的其它代码 ; 打开 app 模块下的 build.gradle 构建脚本 , 删掉所有代码 , 进行如下配置 :      

    2024年01月19日
    浏览(47)
  • Android Gradle 7.1+新版本依赖变化

    前一段时间由于工作需要把可爱的小雪狐舍弃了,找到了小蜜蜂。但是新版本的小蜜蜂出现了很多和旧版本不一样的位置。 1.功能位置迁移,原来在工程build.gradle的 buildscript 和 allprojects 移动至setting.gradle并改名为 pluginManagement 和 dependencyResolutionManagement 。里面的东西依旧可以

    2023年04月24日
    浏览(55)
  • Android——Gradle插件gradle-wrapper.properties

    Android Studio 通过Android Gradle插件 使用 Gradle来构建代码; Android Studio每次升级后, Android Gradle 插件自动更新,对应的Gradle版本也会变动; 因此会产生如下对应关系: 具体见官网描述:Android Gradle 插件版本说明  |  Android 开发者  |  Android Developers 如图所示 具体看官网描述:

    2024年02月03日
    浏览(37)
  • 关于Android Studio使用Gradle构建时,依赖下载过慢的方案

    每个As人都应该被gradle下载问题困扰过。网上也有很多类似文章教你怎么做。我也把配置贴出来。 很多文章都是把repositories闭包当中的配置这么写: 这个时候你配置的镜像包没有发挥作用。gradle下载依赖的时候会从这几个仓库当中一路找下来。假如你需要下载一个 abc.jar 的依

    2024年02月04日
    浏览(50)
  • Android——Gradle插件项目根目录settings.gradle和build.gradle

    项目根目录下的settings.gradle配置文件示例: 对每个项目和全局的配置。 pluginManagement{}块只能出现在两个设置中。 一个是settings.gradle文件,它必须是文件中的第一个代码块,顺序第一出现;另一个是Initialization Scripts,不在本文讨论内。 具体使用官方网址:Gradle-pluginManagemen

    2024年02月04日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包