自定义Gradle插件(android自定义gradle插件)

自定义Gradle插件(android自定义gradle插件)

浏览次数:
信息来源: 用户投稿
更新日期: 2026-02-02 11:39:59
文章简介

Gradle是Android构建过程中非常重要的一部分,但并不是所有的Android开发者都对Gradle足够熟悉,因为它在我们平时的业务开发中使用的频率相对较低。小编准备以自定义Gradle插

2025阿里云双十一服务器活动

Gradle是Android构建过程中非常重要的一部分,但并不是所有的Android开发者都对Gradle足够熟悉,因为它在我们平时的业务开发中使用的频率相对较低。小编准备以自定义Gradle插件为入口,让大家一起来认识Gradle。首先创建一个模块,名称必须是buildSrc,选择JavaLibrary。我们需要删除java文件夹并重建一个groovy.文件夹以及groovy文件。主要工作就是将我们的gradle插件编译成jar包,放到工程使用的地方。这里简单介绍一下自定义Gradle插件的方法。稍后我们会制作一些具有实际功能的插件,然后介绍给大家。

Gradle是Android构建过程中非常重要的一部分,但并不是所有的Android开发者都对Gradle足够熟悉,因为它在我们平时的业务开发中使用的频率相对较低。

小编准备以自定义Gradle插件为入口,让大家一起来认识Gradle。

自定义Gradle的方式有以下三种:

1、直接在构建文件build.gradle中编写Plugin。以这种方式编写的插件无法被其他构建文件引用

2、buildSrc项目在自己的项目中可以自由使用,但其他项目不能使用

3.在单独的项目中自定义GradlePlugin,上传到远程maven库等,并在其他项目中添加依赖来引用此插件

classDemoPluginimplementsPlugin

{

voidapply(Projecttarget){

println("DemoPlugininbuild.gradle")

然后构建,就可以看到控制台输出的Log了。

首先创建一个模块,名称必须是buildSrc,选择JavaLibrary。然后模块中会自动生成一个java文件夹和对应的java文件。我们需要删除java文件夹并重建一个groovy

importorg.gradle.api.Plugin

importorg.gradle.api.Project

classDemoPluginimplementsPlugin

{

voidapply(Projectproject){

println("DemoPlugininbuildSrcModule")

buildSrc模块中的build.gradle文件:

implementationgradleApi()

implementationlocalGroovy()

自定义Gradle插件,android自定义gradle插件

applyplugin:com.example.DemoPlugin

3.生成可供其他项目复用的插件

按照与之前相同的方式创建一个模块。名称不是必需的。让我们构建一个gradle插件:

DemoPlugin.groovy的创建同上。

主要区别在于模块中的build.gradle。主要工作就是将我们的gradle插件编译成jar包,放到工程使用的地方。

我们直接放在项目的plugin_libs文件夹下:

group='com.example.plugin'

archivesBaseName='gradle-plugin'

repository(url:uri('https://www.fruan.com/plugin_libs'))

然后,点击uploadArchives生成对应的插件

可以看到对应目录下已经有我们构建的插件了:

接下来我们需要在我们的项目中依赖这个插件,项目根目录下的build.gradle:

url(uri('https://www.fruan.com/post/plugin_libs'))

classpath'com.android.tools.build:gradle:3.2.1'

classpath"org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"

classpath'com.example.plugin:gradle-plugin:0.0.1'

最后调用的时候,依然是app下的build.gradle:

applyplugin:com.example.DemoPlugin

当然,我们可以将插件发布到公司仓库,这样其他项目也可以直接依赖。

这里简单介绍一下自定义Gradle插件的方法。稍后我们会制作一些具有实际功能的插件,然后介绍给大家。

免责声明

1、本网站属于个人的非赢利性网站,转载的文章遵循原作者的版权声明。

2、本网站转载文章仅为传播更多信息之目的,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所

提供信息的准确性及可靠性,但不保证信息的正确性和完整性,且不对因信息的不正确或遗漏导致的任何

3、任何透过本网站网页而链接及得到的资讯、产品及服务,本网站概不负责,亦不负任何法律责任。

4、本网站所刊发、转载的文章,其版权均归原作者所有,如其他媒体、网站或个人从本网下载使用,请在

转载有关文章时务必尊重该文章的著作权,保留本网注明的“稿件来源”,并白负版权等法律责任。

标签:
托管计划影响SEO的3种方式(seo托管的好处)
« 上一篇
返回列表
下一篇 »

如本文对您有帮助,就请抽根烟吧!