【Android Studio】gradle文件、配置、版本下载、国内源(SDK版本、gradle版本以及gradle-plugin(AGP)版本)

文章目录

    • AS查看gradle-plugin版本及gradle版本(图形)
    • 查看gradle-plugin版本及gradle版本(配置文件)
    • 配置文件分析
    • 解决gradle下载失败、版本错乱等问题。

Gradle 是一个基于 Apache Ant 和 Apache Maven 概念的自动化构建工具,它使用一种基于 Groovy 的特定领域语言(DSL)来声明项目设置,而不是传统的 XML。Gradle 提供了更灵活和强大的方式来构建、测试、打包和部署应用程序,它支持多种编程语言和平台,包括 Java、Kotlin、Groovy、Android、C/C++ 等。
Gradle 的优势

  • 灵活性:Gradle 允许你以编程方式定义构建逻辑,这提供了比传统 XML 配置更高的灵活性。
  • 性能:Gradle 使用守护进程和增量构建来加速构建过程。
  • 多项目构建:Gradle 支持在一个构建脚本中定义多个项目,并允许你跨项目共享配置和依赖项。
  • 强大的依赖管理:Gradle 提供了灵活的依赖管理机制,支持从 Maven 仓库、Ivy 仓库和其他类型的仓库中解析依赖项。
  • 社区支持:Gradle 有一个活跃的社区,提供了大量的插件和文档资源。

AS查看gradle-plugin版本及gradle版本(图形)

在这里插入图片描述
在这里插入图片描述

查看gradle-plugin版本及gradle版本(配置文件)

  • 进入项目级bulid.gradle(不是app级)
    在这里插入图片描述
  • gradle\wrapper\gradle-wrapper.properties

在这里插入图片描述

配置文件分析

  • gradle-plugin
    这里主要解决第一次构建项目时可能出现的问题,不考虑具体项目配置,涉及到的配置文件就上图两个。
    项目级build.gradle:项目全局的gradle构建脚本(下面是uniapp 安卓SDK实例)
    (注意不要找到app文件夹里的那个了)
// Top-level build file where you can add configuration options common to all sub-projects/modules.buildscript {repositories {maven {url 'https://maven.aliyun.com/repository/google'}maven {url 'https://maven.aliyun.com/repository/gradle-plugin'}maven {url 'https://maven.aliyun.com/repository/public'}}dependencies {classpath 'com.android.tools.build:gradle:4.1.1'// NOTE: Do not place your application dependencies here; they belong// in the individual module build.gradle files}
}allprojects {repositories {maven {url 'https://maven.aliyun.com/repository/google'}maven {url 'https://maven.aliyun.com/repository/gradle-plugin'}maven {url 'https://maven.aliyun.com/repository/public'}}
}task clean(type: Delete) {delete rootProject.buildDir
}
  • gradle
    repositories中配置的是仓库地址,Android Studio会从这里的地址下载gradle等工具。
    gradle-wrapper.properties:配置gradle
#Mon Dec 28 18:07:31 CST 2020
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-all.zip

解决gradle下载失败、版本错乱等问题。

  1. 配置国内源
    首先配置国内的源,这里用阿里云的仓库
    https://developer.aliyun.com/mvn/guide
    在build.gradle文件中把 google() 和 jcenter() 注释掉,并添加

在这里插入图片描述
gradle版本和plugin版本是有对应关系的,版本错误的话可能会发生异常,具体对应关系见网址https://developer.android.com/studio/releases/gradle-plugin
(注:需要科学上网才能打开)
这里贴一个当前最新的对应关系表,如果不追求最新版的话应该够用了。
插件版本 所需的最低 Gradle 版本

plugin(AGP)gradle
8.4 (alpha)8.6-rc-1
8.38.4
8.28.2
8.18.0
8.08.0
7.47.5
7.37.4
7.27.3.3
7.17.2
7.07.0
4.2.0+6.7.1
4.1.0+6.5+
4.0.0+6.1.1+
3.6.0 - 3.6.45.6.4+
3.5.0 - 3.5.45.4.1+
3.4.0 - 3.4.35.1.1+
3.3.0 - 3.3.34.10.1+
3.2.0 - 3.2.14.6+
3.1.0+4.4+
3.0.0+4.1+
2.3.0+3.3+
2.1.3 - 2.2.32.14.1 - 3.5
2.0.0 - 2.1.22.10 - 2.13
1.5.02.2.1 - 2.13
1.2.0 - 1.3.12.2.1 - 2.9
1.0.0 - 1.1.32.2.1 - 2.37.3 7.4
  1. 手动下载gradle
    如果因为某些原因无法自动下载或解压gradle,可以手动进行下载并自行放置。
    gradle文件所在的地址是
    C:\Users\用户名\.gradle\wrapper\dists
    打开以后就会看见不同版本的gradle
    在这里插入图片描述

其中bin后缀的是只包含二进制文件,all后缀的包括二进制文件、文档和源代码,根据自己的需求进行选择。

进入任意一个gradle目录中都会有一个乱码文件夹,这个是必须的,如果gradle无法下载,也点击Android Studio中的Sync按钮让它去生成这个乱码文件夹,好让我们去手动放置。
在这里插入图片描述
在这里插入图片描述

选择好gradle版本后,开始手动下载,官方地址:https://gradle.org/releases/
以我使用的8.7为例
在这里插入图片描述

binary-only就是bin版本,complete就是all版本,自行选择进行下载即可。
下载完成后会得到一个zip压缩包,注意不要解压。把压缩包放到刚才提到的乱码文件夹中。
在这里插入图片描述

接下来重启Android Studio,它会自动进行解压并完成配置。

如果重启后还是在下载gradle文件,这时候就去看看是不是bin和all对应不上,比如项目需要bin版本的gradle,而你放了一个all版本的压缩包进去,那它当然还会下载。
这时候进入gradle-wrapper.properties 文件中,最后一行把bin改成all就解决问题了。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/394834.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux:多线程(二.理解pthread_t、线程互斥与同步、基于阻塞队列的生产消费模型)

上次讲解了多线程第一部分:Linux:多线程(一.Linux线程概念、线程控制——创建、等待、退出、分离,封装一下线程) 文章目录 1.理解Linux下线程——理解tid2. Linux线程互斥2.1相关概念2.2引入问题分析问题解决思路 2.3L…

牛客网每日刷题之 HJ99.自守数(C++)

在不断学习的过程中也不能忘记了基础知识的巩固,在学习新的知识后要学会去举一反三,前不久我刚刚了解了一些关于 string 类的知识,对牛客网的 自守数 有了新的解题思路,让我们一起看看这道题吧 思路解析 a. 整数方法 1. 首先我们知…

盘点5个PDF 怎么转换成 Word 的实用技巧

在日常的办公和学习中,要将 PDF 文件转换成 Word 是很常有的事。方便我们编辑、修改内容或者是提取其中的内容。一般都会用到一些工具;下面,我将为大家介绍5种高效且实用的 PDF 转 Word 的方法。 1、PDF365转换软件 直通车:www.…

模块化叙事的演变:DeFi借贷开发的模块化转型

随着区块链技术的不断发展,去中心化金融(DeFi)正经历一场深刻的变革。模块化借贷作为这一变革的重要部分,正逐渐成为加密金融领域的焦点。本文将探讨模块化借贷的起源、演变及其未来发展方向。 一、模块化的起源 模块化区块链的概…

nodejs/node-sass/sass-loader三者版本对应关系(已解决)

基本前提:了解版本对应关系 示例: 我的nodejs:v14.21.3, 则package.json: "node-sass": "^4.14.1", "sass-loader": "^8.0.0",扩展: 查看node历史版本: Node.js…

CVE-2017-15715~Apache解析漏洞【春秋云境靶场渗透】

Apache解析漏洞 漏洞原理 # Apache HTTPD 支持一个文件拥有多个后缀,并为不同后缀执行不同的指令。比如如下配置文件: AddType text/html .html AddLanguage zh-CN .cn# 其给 .html 后缀增加了 media-type ,值为 text/html ;给 …

【C++进阶学习】第十二弹——C++ 异常处理:深入解析与实践应用

前言: 在C编程语言中,异常处理是一种重要的机制,它允许程序员在运行时捕获和处理错误或异常情况。本文将详细介绍C异常处理的相关知识点,包括异常的定义、抛出与捕获、异常处理的原则、以及在实际编程中的应用。 目录 1. 异常处理…

【目标检测实验系列】YOLOv5高效涨点:基于NAMAttention规范化注意力模块,调整权重因子关注有效特征(文内附源码)

1. 文章主要内容 本篇博客主要涉及规范化注意力机制,融合到YOLOv5(v6.1版本,去掉了Focus模块)模型中,通过惩罚机制,调整特征权重因子,使模型更加关注有效特征,助力模型涨点。 2. 简要概括 论文地址&#x…

为什么要用数据库管理系统?5个你不得不知道的理由

你是否曾经想过,为什么几乎所有的企业和组织都在使用数据库管理系统(DBMS)?为什么不直接使用文件系统来存储和管理数据呢?如果你有这样的疑问,那么这篇文章正是为你而写。在接下来的内容中,我们将深入探讨使用数据库管理系统的5个关键原因,这些原因将彻底改变你对数据管理的认…

企业及园区电力能源管理系统方案

概述 面对中小型的用能集团、园区能耗监测分析等场景需求,拓扑未来公司推出标准化的企业及园区电力能源管理系统方案,力求高效高质地为目标客户提供高效部署、轻松运维的本地化能源管理解决方案。 本方案以软硬件一体的方式,集成了标准电力监…

c++----初识模板

大家好,这篇博客想与大家分享一些我们c中比较好用的知识点。模板。首先咧,我们都知道模板嘛,就是以前人的经验总结出来的知识。方便我们使用。这里的模板也是一样的。当我们学习过后,对于一些在c中的自定义函数,我们在…

GIS,矢量瓦片加载速度优化

文章目录 一、前言二、矢量瓦片的基础知识三、矢量切片加载速度优化3.1 地图缩编3.2 矢量瓦片中的图层根据显示层级定制3.3 矢量瓦片中的图层字段要按需定制3.4 多个图层合并为矢量切片图层组发布 四、总结 一、前言 单个矢量瓦片的大小并没有固定的上限,这意味着在…

C语言典型例题30

《C程序设计教程(第四版)——谭浩强》 习题2.7 从银行贷了一笔款d,准备每月还款额为p,月利率为r,计算多少个月能还清。 设d30000元,p6000元,r1%。对求得的月份取小数点后一位,对第二…

Spring面试篇章——IOC

IOC概念和原理 IOC概念 IOC就是控制反射,把对象创建和对象之间的调用过程,交给Spring进行管理使用IOC的目的:降低耦合度 IOC底层原理 xml解析、工厂模式、反射 图解: 原始模式 耦合度太高了,即当dao改了&#xf…

【Liunx】线程与进程的经典面试题总结

在这个浮躁的时代 只有自律的人才能脱颖而出 -- 《觉醒年代》 线程与进程的面试题总结 1 简述什么是LWP2 简述LWP与pthread_create创建的线程之间的关系3 简述轻量级进程ID与进程ID之间的区别4 请简述什么是线程互斥,为什么需要互斥5 简述你了解的进程间通信方式…

360安全大模型为什么是“非卖品”?

大模型虽然不是万能的,但是没有大模型又是万万不能的。以AI大模型为动力引擎,AI正在重塑各行各业,并快速“飞入寻常百姓家”。 AI安全 以“模”制“模” 2024年全国两会,“人工智能”首次被写入政府工作报告。报告中提出&#xff…

【2024算力大会分会 | SPIE出版】2024云计算、性能计算与深度学习国际学术会议(CCPCDL 2024)

【2024算力大会分会 | SPIE出版】 2024云计算、性能计算与深度学习国际学术会议(CCPCDL 2024) 2024 International conference on Cloud Computing, Performance Computing and Deep Learning CCPCDL往届均已完成EI检索,最快会后4个半月完成! 2024中…

嵌入式学习之文件IO和标准IO

IO概述 I/O是Input/Output的缩写,指的是输入/输出。在计算机科学和工程领域,I/O是指计算机系统与外部环境或内部组件之间进行数据交换的过程和机制。 用户I/O 用户通过输入设备与计算机交互。例如,通过键盘输入文字、通过鼠标点击界面等。…

图片怎么裁剪成想要的尺寸?图片裁剪的几个常用方法

裁剪图片到精准且令人满意的尺寸,是每一位图像编辑爱好者、社交媒体达人以及专业设计师在日常工作中不可或缺的技能。在这个视觉为王的时代,一张完美适配各种平台的图片,能够瞬间抓住观众的眼球,传递出最精准的信息与情感。从手机…

Vue3项目创建及相关配置

Vue是一种用于构建用户界面的JavaScript框架。它采用了一种称为MVVM(Model-View-ViewModel)的架构模式。 MVVM是一种将用户界面与业务逻辑和数据分离的设计模式。它包括三个部分: Model(模型):表示应用程序…