Gradle 学习之插件介绍
Posted Nicholas_hzf
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Gradle 学习之插件介绍相关的知识,希望对你有一定的参考价值。
目录
一、Gradle 设计介绍
Gradle 的扩展性十分强,它本身提供基本的概念和整体的核心框架,其他的具体场景逻辑,都是以插件的形式进行扩展
Gradle 本身就内置了很多常用插件,可以满足我们大部分的需求,但是也有一些常用的插件没有内置,这就需要我们自己去扩展实现,然后应用到 Gradle 当中去
二、Gradle 插件介绍
1. 二进制插件
二进制插件就是实现了 org.gradle.api.Plugin
接口的插件
应用:
// 法一:java 是 Java 插件的 plugin id
// Gradle 自带的核心插件都有一个容易记的短名,是唯一的
apply plugin:'java'
// 法二:
apply plugin:org.gradle.api.plugins.JavaPlugin
// 法三:
apply plugin:JavaPlugin
2. 脚本插件
脚本插件,严格来说不能算是一个插件,而是脚本。应用脚本插件,其本质就是把这个脚本加载进来,这个脚本可以是本地的,也可以是网络的
应用:
apply from:'version.gradle'
意义:脚本文件模块化的基础,可以按照功能模块把我们的脚本进行拆分,然后在主脚本文件引用,方便复用与归类,化整为零
3.应用第三方发布的插件
使用第三方发布的 jar 的二进制插件,一般需要配置对应的仓库和类路径
buildscript
repositories
mavenCentral()
dependencies
classpath "com.android.tools.build:gradle:7.0.3"
// 使用 plugins DSL 应用插件
plugins
id 'com.android.application'
但是如果是使用 plugins DSL 应用插件,且插件已经被托管在 https://plugins.gradle.org/ 网站上,就可以不用在 buildscript 里配置 classpath 依赖了,直接使用 plugins 就可以应用了,这里以目前网址上显示第一个插件为例:com.hcl.security.appscan
- 使用 plugins DSL 方式
plugins
id "com.hcl.security.appscan" version "1.0.6"
- 使用传统的应用方式
buildscript
repositories
maven
url "https://plugins.gradle.org/m2/"
dependencies
classpath "gradle.plugin.com.hcl.security:appscan-gradle-plugin:1.0.6"
apply plugin: "com.hcl.security.appscan"
整理学习自飞雪无情大佬的《Android Gradle 权威指南》和互联网资料
以上是关于Gradle 学习之插件介绍的主要内容,如果未能解决你的问题,请参考以下文章