当前位置: 首页 > news >正文

Gradle学习-3 Gradle插件

1、Gredle插件是什么

  • Gradle插件是用于扩展和增强Gradle构建系统的功能模块
  • 通过插件,Gradle可以执行各种构建任务,如编译代码、打包应用、运行测试等

Gradle插件主要分为:二进制插件、脚本插件

二进制插件二进制插件是预编译的、可以复用的插件,它们通常打包成Jar文件并且可以发布到Maven仓库或者Gradle Plugin Portal。二进制插件可以用Java或Kotlin等编程语言编写。
脚本插件脚本插件是用Groovy或Kotlin DSL编写的脚本文件,通常是.gradle或.gradle.kts文件。脚本插件是项目内的构建脚本,可以用来定义构建逻辑。

2、Gradle插件的使用

2.1、二进制插件的使用

(1)声明插件名称和版本号

根目录的build.gradle中声明要使用的android插件名称和版本号
在这里插入图片描述

(2)在具体的子工程中应用插件

app目录下的build.gradle中使用插件
在这里插入图片描述

注:要使用插件"com.android.tools.build:gradle:4.1.3",需要通过字符串"com.android.application",插件和字符串的对应关系,后续会介绍。一般官方在发布一个插件时,会说明调用的字符串。

(3)配置插件参数

例如,我们配置的"com.android.application"插件,就需要配置一些android SDK参数的

在这里插入图片描述

2.2、脚本插件的使用

(1)在根目录下新建一个test.gradle脚本

test.gradle

println("我是 test.gradle")
(2)将脚本应用到子工程中

在app目录下的build.gradle中引入test.gradle

build.gradle

println("我是 app目录下的build.gradle")
apply from:project.rootProject.file("test.gradle")

执行命令 “./gradlew clean -q”

执行结果
在这里插入图片描述

3、Gradle二进制插件开发流程

  • 建立插件工程
  • 实现插件内部逻辑
  • 发布与使用插件
http://www.lryc.cn/news/385065.html

相关文章:

  • 百度文心智能体,创建属于自己的智能体应用
  • 【软件测试】白盒测试与接口测试详解
  • 【SpringBoot Web框架实战教程】03 SpingBoot 获取 http 请求参数
  • Mac14.1.2 M1芯片免费读写ntfs硬盘-亲测有效,免费!!!
  • 手写SpringMVC之ApplicationContextListener
  • Paimon 在汽车之家的业务实践
  • 2024-06-27 问AI: 介绍一下 LLM building process
  • 猫也有自动厕所上了吗?自费分享好用的智能猫砂盆,看完不亏。
  • 《分析模式》漫谈07-怎样把一张图从不严谨改到严谨
  • 纯干货丨知乎广告投放流程和避坑攻略
  • mac 安装mysql启动报错 ERROR!The server quit without update PID file
  • TypeScrip环境安装与基础
  • 6.27学习总结
  • 选择第三方软件测试机构做验收测试的好处简析
  • 【图书推荐】CPython设计与实现“适合所有Python工程师阅读的书籍”
  • 原创作品—医疗行业软件界面UI、交互设计
  • [C++深入] --- vector容器浅析
  • 用MySQL和navicatpremium做一个项目—(财务管理系统)。
  • Jenkins教程-5-gitee自动化测试任务构建
  • CAN-bus总线在冷链运输中的应用
  • Vue 与 React 区别
  • docker+[nginx] 部署nacos2.x 集群
  • Linux学习第54天:Linux WIFI 驱动:蓝星互联
  • 芯片后端之 PT 使用 report_timing 产生报告如何阅读
  • 基于elastic stack搭建的ELK系统资源占用预估
  • LiteDB - 一个单数据文件 .NET NoSQL 文档存储
  • 视觉理解与图片问答,学习如何使用 GPT-4o (GPT-4 Omni) 来理解图像
  • 【LocalAI】(13):LocalAI最新版本支持Stable diffusion 3,20亿参数图像更加细腻了,可以继续研究下
  • 云计算【第一阶段(19)】磁盘管理与文件系统 LVM与磁盘配额(二)
  • 基于C++实现的EventLoop与事件驱动编程