首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Gradle 手记|记录我使用过的 build 基本配置(不断更新中。。。

真的要细说 Gradle,恐怕目前能力还是有限,仅仅了解皮毛,简单分享,欢迎交流~ 一、Gradle 基本配置 --- 其实这块更应该成为封装项目的 basic build 配置,以便于后续的 module...buildToolsVersion Versions.buildTools // 指定 Android 插件适用于所有构建版本的版本属性的默认值 defaultConfig {...module 均可使用 */ dependencies { // ... } 二、buildConfigField 使用 --- 在构建时,Gradle 将生成 BuildConfig 类,以便应用代码可以检查与当前构建有关的信息...针对我之前这种法子做个小小升级,在原有 gradle 文件中添加如下内容: android { // 封装项目的所有构建类型配置 buildTypes { debug {...个人还是建议巧用 README,记录项目常用的一些东西,方便之后的小伙伴快速上手~ 这里附上一张我之前项目的事例,也是在尝试,欢迎提供更好建议~ 在这里我截个之前负责的项目记录的 README 做个抛砖引玉吧

1.3K30

工具 | Android Studio 2.3镜像更新,极速下载体验#2

Android Studio 2.3发布了,更新了很多不错的功能,比如WebP的支持,AppLink助手等,,因为众所周知的原因,所以就第一时间更新了镜像,让大家可以第一时间体验Android Studo...2.3最新版之后,因为使用的是Gradle3.3的构建,所以需要重新下载Gradle3.3,官方地址因为被墙,所以会下载不了,一直不动,这时候需要使用本网站提供的Gradle镜像,具体配置可以参考下面的...这是一个包含2.0以后所有版本的Gradle镜像,便于在Gradle构建的时候下载Gradle,如果从官网下载,那构建时间是个噩梦,目前最新版是3.4.1 所有Gradle版本下载地址 http://.../gradle/gradle-3.4.1-bin.zip 使用Gradle Wrapper构建的时候,把properties文件里的Gradle地址换成镜像的即可,版本号保持官方的命名风格,修改成其他版本号...,如果没有你想要的,可以留言提供地址,我可以加入,如果喜欢,点个赞,感谢大家的支持。

54730
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    简单说说 Android Studio3.0的更新

    再说一次,如果只是要体验 IDE 的新特性,为了不折腾,先不要着急升级 gradle 插件。 为什么说这个?因为我看到群里面有小伙伴升级了之后说报了一堆错,没办法只好回去用 2.3 了。额。。...我能说我一直都同一个工程 2.3 和 3.0 的 IDE 切来切去么?只要你不升级 gradle 插件,你原有的工程配置根本不会有什么毛病。 2....构建插件的升级 就像前面说的,大家遇到了构建报错,其实主要是构建插件升级导致的,请再次注意这个插件是 gradle 插件。 No pain, No gain....这次更新,对于构建依赖图的配置要求更新详细了,这样做的好处就是避免了很多无用的构建,也正是这样,可以想象对于一些巨无霸的项目,构建速度会有多么显著的提升。...那么这次插件升级对于使用了自定义构建的工程可能影响会比较大,例如我们之前自定义过构建流程,甚至 hack 过 aapt,随着这次插件的升级,构建工具也有了较为显著的革新,那么惨了,我们这些工具在升级新版本之前都要做验证和同步更新

    45720

    【转载】解决refreshing gradle project 和Building gradle project info 一直卡住速度慢

    转载:  http://blog.csdn.net/xx326664162/article/details/52002616 文章出自:薛瑄的博客 分析原因: 更改Gradle的版本后,或者更新AS后,...你可能会有疑问,为什么有时候更新AS需要再下载Gradle,为什么不用已经下载好的Gradle?请查看这篇博客 主要原因是下载gradle的时候,网速过慢。...而是使用指定的gradle 解决办法: 找到了原因,解决办法就显然已经了。下面我提供两种方法。...第二种:使用AS自带的Gradle 注意:这个方法,我在升级AS(2.2.3->2.3)的时候,升级后发现Gradle的版本是gradle-3.2,但是2.3版本的AS支持gradle的最低版本是3.3...而是使用指定的gradle 理论上Gradle 的版本越新构建运行越快,也只是理论上,所以推荐稳定版的版本。

    82870

    【转载】解决refreshing gradle project 和Building gradle project info 一直卡住速度慢

    转载:  http://blog.csdn.net/xx326664162/article/details/52002616 文章出自:薛瑄的博客 分析原因: 更改Gradle的版本后,或者更新AS后,...你可能会有疑问,为什么有时候更新AS需要再下载Gradle,为什么不用已经下载好的Gradle?请查看这篇博客 主要原因是下载gradle的时候,网速过慢。...而是使用指定的gradle 解决办法: 找到了原因,解决办法就显然已经了。下面我提供两种方法。...第二种:使用AS自带的Gradle 注意:这个方法,我在升级AS(2.2.3->2.3)的时候,升级后发现Gradle的版本是gradle-3.2,但是2.3版本的AS支持gradle的最低版本是3.3...而是使用指定的gradle 理论上Gradle 的版本越新构建运行越快,也只是理论上,所以推荐稳定版的版本。

    1.7K30

    【Android Gradle 插件】Gradle 依赖管理 ⑤ ( dependencies 依赖项拆分 | 依赖组 | 依赖名称 | 依赖版本号 | 动态指定依赖版本号 | 使用命令行查看模块 )

    | 依赖版本 ) 二、dependencies 动态指定依赖版本号 三、使用命令行查看模块依赖 Android Plugin DSL Reference 参考文档 : Android Studio 构建配置官方文档...: https://developer.android.google.cn/studio/build 添加构建依赖项 参考文档 : https://developer.android.google.cn.../api/artifacts/dsl/DependencyHandler.html 添加构建依赖项 参考文档 : https://developer.android.google.cn/studio..., 可能有不同的表现 , 如果后期依赖库更新 , 可能导致之前的版本无法使用 ; 如果在 dependencies 配置了多个相同的依赖 , 那么会使用最高版本的依赖 ; dependencies {...app Module 模块的依赖项 ;

    1.9K10

    优化Android StudioGradle构建

    优化Android Studio/Gradle构建        使用Android Studio进行开,随着项目的增大,依赖库的增多,构建速度越来越慢,现在最慢要6分钟才能build一个release...实测速度快50%左右 原理不明 回头写个脚本 build完成再自动安装运行应该就好了 我觉得TMD还是把公司的破电脑扔了换个新的才能从根本上解决问题 来源: 的配置和上面的一大段一样,主要是在这个地方配置的只会在ide构建的时候生效,命令行构建不会生效。 ? ?...后记 经过这样一番折腾,我原来需要4,5分钟才能构建完成的项目,现在只需要30秒左右就可以构建完成了。当然了,如果你这样还是不可以的话,那么,你应该换电脑了,ssd的硬盘,更大的内存,必须的上了。...tid=11 本文永久更新链接地址:http://www.linuxidc.com/Linux/2015-03/115241.htm

    1.1K90

    Gradle 构建工具 #5 又冲突了!如何理解依赖冲突与版本决议?

    前言 大家好,我是小彭。 在前文 Gradle 构建工具 #3 Maven 发布插件使用攻略(以 Nexus / Jitpack 为例) 和 Gradle 构建工具 #4 来开源吧!...2.1 什么是依赖传递(What) 2.2 什么是依赖冲突(What) 2.3 如何查看依赖版本冲突(How) 3、Gradle 依赖版本决议 3.1 对比 Maven 和 Gradle 的解析策略(What...(如 2.+⇒2.3 只有在构建时才能确定)。...因为 A 模块本地仓库中已经下载了 B 模块的 1.0.0 版本,所以构建时不会重复去下载远程仓库中更新的版本。...Gradle 最高版本策略 Gradle 构建系统会采用最高版本策略,构建系统会选择依赖关系图中满足约束规则的最高版本。

    75230

    Android Studio3.0更新之路(遇坑必入)

    ,后来LZ把2.3版本的给删了,缓存给清除了,然后就变成这个错了。...第一眼看这个错的时候我以为我setting.gradle中没有依赖appCommon,看完之后明明确实依赖了,而且这是一个老项目,在AS2.3版本的时候很正常,然后我就知道这又是一个坑,无奈的又去上了一把...gradle中好像有这么个节点,抱着试一试的态度我删了那个节点,然后,卧槽卧槽卧槽,可以成功编译了,这是不是有一种躺着过坑的赶脚。...我们可以看到,谷歌爸爸把buildToolsVersion构建工具的版本给“干掉了”,在以前的版本中,buildToolsVersion也会给项目的构建带来很多错,现在谷歌爸爸把它给“干掉了”;还有就是下面的依赖换成了...最后需要注意的是开启这个之后会降低应用程序的构建速度,因此只有在你要开始对应用程序进行概要分析时,再启用它。

    71540

    【Android Gradle 插件】自定义 Gradle 插件模块 ③ ( Gradle 插件模块发布配置 | Windows 本地 Maven 仓库地址 | 将插件上传到本地 Maven 仓库 )

    : Android Studio 构建配置官方文档 : https://developer.android.google.cn/studio/build 添加构建依赖项 参考文档 : https...文档 ( 可设置 Gradle 构建声明周期监听器 ) : https://docs.gradle.org/current/javadoc/org/gradle/api/invocation/Gradle.html...| 引入自定义 Gradle 插件模块 | 配置 Gradle 插件上传选项 | 配置分组名称版本号 ) 中 , 定义完插件后 , 在 自定义 Gradle 插件模块 的 build.gradle 构建脚本中...} } 首次编译执行 , 可以在 自定义 Gradle 插件的 Module 模块 下 , 看到 publishing 分组的 Gradle 任务 , 如下图红色矩形框中的内容 ; generatePomFileForPluginPublication...; 在我的电脑上 , 实际的目录为 " C:\Users\octop.m2\repository " , 用户名是 octop ; 三、将插件上传到本地 Maven 仓库 ---- 执行 Gradle

    96710

    【Android Gradle 插件】Gradle 构建生命周期 ③ ( BuildListener 构建监听器 | TaskExecutionGraphListener 任务执行图监听器 )

    Android Studio 构建配置官方文档 : https://developer.android.google.cn/studio/build 添加构建依赖项 参考文档 : https:/.../tasks/testing/Test.html LibraryExtension ( Library 依赖库的 build.gradle#android 配置 ) 文档 : android-gradle-dsl...文档 ( 可设置 Gradle 构建声明周期监听器 ) : https://docs.gradle.org/current/javadoc/org/gradle/api/invocation/Gradle.html...(BuildResult buildResult) { // 构建完成时回调的函数 } }) 二、TaskExecutionGraphListener 任务执行图监听器 ----...代码示例 : 调用 TaskExecutionGraph 任务执行图的 List getAllTasks(); 函数 , 可以获取到所有的 Gradle 任务 ; // Gradle 任务执行图监听器

    44110

    【Android Gradle 插件】Gradle 自定义 Plugin 插件 ② ( buildSrc 目录中实现 Gradle 插件 | 实现 Gradle 插件代码 | 模块引入插件并编译 )

    文章目录 一、实现 Gradle 插件代码 二、模块引入插件并编译 Android Plugin DSL Reference 参考文档 : Android Studio 构建配置官方文档 : https.../tasks/testing/Test.html LibraryExtension ( Library 依赖库的 build.gradle#android 配置 ) 文档 : android-gradle-dsl.../org/gradle/api/execution/TaskExecutionGraphListener.html 一、实现 Gradle 插件代码 ---- 在 buildSrc 模块 中的 src...导入 该插件时 , 会自动执行 apply 方法中的 代码 ; Gradle 插件类需要实现 org.gradle.api.Plugin 接口 , 接口泛型设置为 org.gradle.api.Project...(T var1); } 二、模块引入插件并编译 ---- 在 app 模块 的 build.gradle 构建脚本 中 , 使用 apply plugin 引入自定义插件 , apply plugin:

    52410

    【Android Gradle 插件】Android Module 模块 build.gradle 构建脚本 Groovy 语法分析 ① ( Gradle 二进制插件引入 | Gradle依赖配置 )

    文章目录 一、Module 模块 build.gradle 构建脚本示例 二、Gradle 二进制插件引入 三、Gradle 依赖配置 Android Plugin DSL Reference 参考文档...: Android Studio 构建配置官方文档 : https://developer.android.google.cn/studio/build 添加构建依赖项 参考文档 : https...二进制插件引入 ---- Gradle 插件有两种形式 : 二进制插件 脚本插件 在 Gradle 脚本中引入二进制插件是常见的用法 , 如 Android 中的 build.gradle 插件引入...在 Gradle 构建脚本中 , 可以直接调用 org.gradle.api.Project 中的方法 , 该类的文档如下 : org.gradle.api.Project 配置 ( build.gradle...根配置 ) 文档 : https://docs.gradle.org/current/javadoc/org/gradle/api/Project.html 上述构建脚本中的 dependencies

    55030

    【Android Gradle 插件】Gradle 依赖管理 ④ ( Android Gradle 插件中注册的依赖分组 | implementation | api | compileOnly )

    文章目录 一、Android Gradle 插件中注册的依赖分组 二、弃用的依赖分组 ( 现在仍然兼容 ) Android Plugin DSL Reference 参考文档 : Android Studio...构建配置官方文档 : https://developer.android.google.cn/studio/build 添加构建依赖项 参考文档 : https://developer.android.google.cn.../build/dependencies 一、Android Gradle 插件中注册的依赖分组 ---- 添加构建依赖项 参考文档 : https://developer.android.google.cn.../studio/build/dependencies 二、弃用的依赖分组 ( 现在仍然兼容 ) ---- 添加构建依赖项 参考文档 : https://developer.android.google.cn...配置依赖项 的分组 :

    55910

    Android Studio 中的Gradle版本介绍

    这两个插件的版本一旦不匹配上,还容易造成更多的编译错误。 但是这两个插件的版本号却不同步。 针对这个问题,我今天好好介绍介绍。 希望能够让大家明白这两个插件的区别以及对应关系。...说明 gradle 介绍 Gradle 不是Google开发的。Gradle是有专门的团队进行开发维护。并且完全开源的自动化构建工具。IDEA 默认集成了该工具。...可以方便的帮我们将项目代码进行构建打包,是一个脚本工具。 Gradle官网:gradle.org 如果你想了解更多与gradle的相关资料,可以通过官网进行了解。...Android Gradle 插件 Android Studio 是采用Gradle 进行代码的打包编译以及构建项目的。 但是Gradle是一个开源的自动构建工具,是面向全平台的。...两个版本号一致 Android Gradle 7.0+更新 但是从7.0 开始,Android 将会有很大的改变。

    1.8K30

    Android 项目编译 Gradle 配置说明

    前言   Android 的Gradle版本更新换代还是很快的,更新换代除了功能上变得强大之外,还会出现很多意料之外的Bug,而很多开发者会被折磨的死去活来,下面我们来看有哪些编译配置。...Gradle插件版本   打开工程目录下的build.gradle,如下图所示:   你会看到顶部这里有一个plugins,标识插件,然后我标注出来的7.0.0就是Gradle的插件版本。...- 3.5 2.0.0 - 2.1.2 2.10 - 2.13 1.5.0 2.2.1 - 2.13 1.2.0 - 1.3.1 2.2.1 - 2.9 1.0.0 - 1.1.3 2.2.1 - 2.3...Android Studio版本与Gradle插件对应表   Android Studio 构建系统以 Gradle 为基础,并且 Android Gradle 插件添加了几项专用于构建 Android...项目版本比当前环境低   第二种情况,就是别人的项目环境,所配置的SDK版本低于你当前环境的版本,这种情况建议你更新项目的Gradle版本和Gradle 插件版本,一般来说你编译这种项目,Android

    2.9K00

    【Android Gradle 插件】Gradle 自定义 Plugin 插件 ④ ( 为自定义 Gradle 插件的扩展配置扩展 | 在自定义插件中获取扩展属性 )

    文章目录 一、Android Gradle 插件扩展的扩展 二、为自定义 Gradle 插件的扩展配置扩展 并 获取扩展属性 Android Plugin DSL Reference 参考文档 : Android...Studio 构建配置官方文档 : https://developer.android.google.cn/studio/build 添加构建依赖项 参考文档 : https://developer.android.google.cn...文档 ( 可设置 Gradle 构建声明周期监听器 ) : https://docs.gradle.org/current/javadoc/org/gradle/api/invocation/Gradle.html...的 扩展 Extension , 在 Module 模块下的 build.gradle 构建脚本中 , android 配置块 就是一个 AppExtension 扩展 , 但是在 android 扩展下又定义了...} 声明扩展 和 扩展的扩展 : 通过调用 project.扩展名.扩展属性 可获取在构建脚本中配置的 扩展属性 , 通过调用 project.扩展名.扩展的扩展名.扩展属性 可获取在构建脚本中配置的

    2K10

    【Android Gradle 插件】Gradle 自定义 Plugin 插件 ⑦ ( 自定义 Gradle 插件导入方式 | buildSrc 插件导入 | 构建脚本中自定义插件 | 独立文件 )

    文章目录 一、在 buildSrc 模块中定义 Gradle 插件 二、在 build.gradle 构建脚本中自定义 Gradle 插件 三、在其它 gradle 脚本中字定义 Gradle 插件 Android...libs 目录下会生成 buildSrc.jar 包 , 在 Module 模块下的 build.gradle 构建脚本中 , 通过 apply plugin: MyPlugin 代码 , 导入插件..., 就是将上述编译生成的 buildSrc.jar 包依赖 , 引入到该 Module 模块的 Gradle 编译过程中 ; 该 自定义 Gradle 插件可以在当前工程中的所有 Module 子模块都可以使用...插件 ---- 在 build.gradle 构建脚本中 , 也可以创建自定义 Gradle 插件 , 并调用该插件中的方法 ; // 在 build.gradle 中定义 Gradle 插件 class...中定义的 MyPlugin3 插件 apply plugin: MyPlugin3 在 build.gradle 构建脚本中 , 引入 plugin.gradle 文件 , 该操作相当于将 plugin.gradle

    1.4K10

    【Android Gradle 插件】自定义 Gradle 插件模块 ① ( 在 Module 模块中自定义 Gradle 插件 | 创建自定义插件类型模块 | 手动导入相关依赖 )

    文档 ( 可设置 Gradle 构建声明周期监听器 ) : https://docs.gradle.org/current/javadoc/org/gradle/api/invocation/Gradle.html..., 并在 build.gradle 构建脚本 中导入插件的代码 ; Android Gradle 插件 也是一种 自定义的 Gradle 插件 , 该插件被上传到 jcenter / google /...mavenCentral 远程仓库 中进行存储 , 在 Android Studio 工程的根目录中的 build.gradle 构建脚本中 , 通过如下方式将 自定义插件 引入 Android 工程...; 三、手动导入相关依赖 ( Java | Groovy | Gradle ) ---- 在 buildSrc 目录 下 , 会自动引入 Java / Groovy / Gradle 的依赖 , 但是在自己创建的...Java Library 类型的依赖库 中 , 需要将其 手动引入 , 在 该 Module 模块的 build.gradle 构建脚本中引入上述依赖 ; plugins { id 'java-library

    2.2K30

    【Android Gradle 插件】Gradle 构建生命周期 ① ( 分析构建脚本 | 执行初始化配置 | 执行 Gradle 任务 | Project#beforeEvaluate 函数 )

    参考文档 : Android Studio 构建配置官方文档 : https://developer.android.google.cn/studio/build 添加构建依赖项 参考文档 :...: ① 初始化阶段 : 分析构建脚本 , 分析 Gradle 构建脚本 build.gradle , 生成构建脚本对应的 Settings 和 Project 类 ; ② 配置阶段 : 执行 初始化配置...; ③ 运行阶段 : 执行 Gradle 任务 ; 二、Project#afterEvaluate 函数 ---- Gradle 构建声明周期 是可以进行 Hook 的 , 在上一篇博客 【Android...#afterEvaluate 函数 就是在 ① 分析构建脚本 与 ② 执行 初始化配置 之间执行的方法 ; // 在 Gradle 分析完成后执行 // 也就是生成了一系列的自带 Gradle 任务之后执行...对应的是 Project#beforeEvaluate 函数 , 该函数是在 开始 进行 Gradle 分析构建脚本 之前 执行的 方法 , 函数原型如下 : public interface Project

    51020
    领券