gradle的使用4

1.gradle的插件都是通过Project.apply()方法完成的,分为二进制插件和脚本插件。
①二进制插件
实现了org.gradle.api.Plugin接口的插件,它们可以有plugin id.
下面是默认导入的插件

apply plugin : 'java' 

其中的java就是plugin id,它对应的类型是org.gradle.api.plugins.JavaPlugin。所以通过类型也能用这个插件:

apply plugin:org.gradle.api.plugins.JavaPlugin

也可以写为:

apply plugin:JavaPlugin

②引用脚本插件

apply from 'version.gradle'

通过from关键字将其他的gradle的文件关联到当前gradle文件中。
其中version.gradle中

ext{
 vCode=2
 vName="1.0"
}

如果想在android studio中打印gradle内容,需要在Terminal中输入命令即可。

2.apply方法的其他用法
上面的apply plugin:'java’使用的Map类型参数的方法,也可以使用闭包的形式。

apply{
   plugin 'java'
}

3.使用第三方插件
第三方发布的jar作为二进制插件,需要在buildscript{}中配置classpath才能使用。gradle的内置插件并不需要这样。
buildscript{}是在构建项目之前,为项目进行前期准备和初始化相关配置依赖的地方,配置好之后才能应用插件。

buildscript {
   ext.kotlin_version = '1.3.0'
    repositories {
	    google()
 	   jcenter()
  }
 dependencies {
  	  classpath 'com.android.tools.build:gradle:3.3.2'
 	   classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
 }
}

4.自定义gradle插件。
①在build.gradle中创建插件并使用,必须实现Plugin接口,这里有一个apply方法,该方法就在插件应用的时候被执行。

apply plugin: 'com.android.application'
apply plugin: myGradlePlugin

android {
    ......
}

class myGradlePlugin implements  Plugin<Project>{
    @Override
   void apply(Project target) {
      target.task("myGradlePluginTask"){
 	       println "自定义插件任务"
 	   }
  }
}

②创建一个独立的插件
需要创建一个groovy工程,发布jar包,进行使用,但是没有成功。

https://blog.csdn.net/a646796992/article/details/82259502

5.依赖仓库的组成

implementation 'com.android.support:appcompat-v7:28.0.0'

是用group,name ,version中间用:组成。

6.源集的使用
是一个java源代码和资源文件的集合,通过源集可以方便的访问源代码目录,设置源集的属性,更改源集的java目录或资源目录。

sourceSets {
    main {
        manifest.srcFile 'src/main/AndroidManifest.xml'
        java.srcDirs("test")
        java {
            srcDir "src/java1"
            println "执行了"
        }
    }
    test {

    }
}

sourceSets.all{
    println name+"---"+java.srcDirs+"----"+resources+"----"+resources.srcDirs
}

源集的属性:

name   
output.classesDir   编译后的class文件目录
output.resourcesDir  编译后生成的资源目录 
compileClasspath  编译该源集的所需的classpath
java    源集的java文件
java.srcDirs   源集所在目录
resources  源集的资源文件
resources.srcDirs  源集资源文件的目录

7、默认java插件的属性

sourceSets
archivesBaseName  打包成jar或Zip文件的名字
manifest  用于访问或者配置manifest清单文件
libsDir  存放库类的目录
distsDir  存放生成的发布的文件的目录

8.多项目构建
首先在settings.gradle中添加

include ':FpcLibsProject:module_base'

然后在app中引用的时候

dependencies{
    implementation project(':FpcLibsProject:module_base')
}

但是也可以用下面的方式:

首先在settings.gradle中添加,这个是根据其依赖工程的具体目录进行配置。

include ':module_base'
project(':module_base').projectDir=new File(rootDir,"../FpcLibsProject/module_base")

然后在app中引用的时候

dependencies{
    implementation project(':module_base')
}

9.设置所有的子工程通用的配置方法

subprojects{
   apply plugin : 'java'
}

如果要包括根目录在内的所有的项目,可以使用allprojects。也就是总的工程名下也被进行配置。一般我们不需要

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Idea是一个功能强大的集成开发环境(IDE),而Gradle是一个灵活的构建工具。将Idea与Gradle结合使用可以提高开发效率和代码管理能力。 首先,通过在Idea中导入或创建Gradle项目,我们可以轻松地管理项目的依赖关系。通过Gradle的依赖管理机制,我们可以在项目中引入所需的第三方库,而不必手动下载、配置和添加它们。在Idea中,我们可以通过简单的配置来更新和更新这些依赖项,以确保项目始终使用最新版本的库。 其次,通过在Idea中启用Gradle插件,我们可以使用Gradle的强大功能来构建和运行我们的项目。我们可以通过Gradle脚本定义和自定义构建任务,例如编译代码、运行测试、生成文档等。在Idea中,我们可以直接在Gradle工具窗口中查看和运行这些任务,而不必在终端中手动执行Gradle命令。 另外,Idea还提供了对Gradle的语法高亮、代码提示和错误检查。它可以帮助我们更轻松地编写和修改Gradle脚本,并防止常见的语法错误。此外,Idea还提供了对Gradle的自动补全功能,以帮助我们更快地查找和使用Gradle提供的功能。 最后,Idea还集成了对Gradle构建过程的可视化和调试支持。我们可以通过在Idea中设定断点和调试标记,以及查看构建过程的详细日志,来分析和解决构建问题。这使得调试Gradle构建变得更加方便和高效。 总的来说,Idea结合Gradle使用可以帮助开发者更好地管理项目依赖、构建项目、编写和调试Gradle脚本。这种结合能够提升开发效率和代码管理能力,是现代软件开发中常用的工具组合之一。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值