Gradle(Task)-HelloWorld!

Posted 码农搬砖

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Gradle(Task)-HelloWorld!相关的知识,希望对你有一定的参考价值。

    Gradle 的一个优势在于其可扩展域模型,其模型核心是任务(task)概念,task是一个可以被gradle认识执行的一个工作单元。

    一:任务的核心是其操作

    例如:我们可以声明一个任务来指定编译某些Java源,或将某些文件从一个目录拷贝到另外一个。任务可以独立执行某些操作,但也可以声明对某些任务的依赖性。gradle会确保所有的依赖都在运行,并确保它们的所有依赖性等等。


    二:一个任务也可以定义自己的输入和输出

    这使得一个任务可以确定自己是否需要执行自己的工作。


Gradle(Task)-HelloWorld!

    三:开始第一个任务吧

    你可能会问,不需要安装gradle吗?不需要,gradle的第一个技巧,在于它知道如何自动安装。它只需要一个shell脚本和一个包括gradle下载和安装信息的小jar文件。在这个目录里有一个gradle wrapper副本。gradle wrapper 仅包含一个脚本,(一个适用linux和windows的脚本,下图红色标注),和一个gradle文件夹(它里面有一个小小的jar包)。

Gradle(Task)-HelloWorld!

gradle wrapper 的工作方式,是通过gradle命令调用。它将检查gradle是否安装。如果没有安装的话,gradle wrapper会先下载安装。如果,没有安装的话,在执行脚本得时候,你看到了很多点,a lot of dots,even more dots.

Gradle(Task)-HelloWorld!

(1)在安装完成之后,我们可以新建一个任务:

task hello {
println("hello world")
}

(2)浏览一下我们的任务:gradlew tasks

Gradle(Task)-HelloWorld!

(3)我的这里有一个叫hello 为任务,我们执行一下

看到了“hello world”,是不是很温馨。

四:让我们对gradle做一个说明

/**
* On Mac/Linux, you can use the Gradle wrapper to run the `hello` task using:
./gradlew hello
If you're running into permissions issues, try:
sh gradlew hello
On Windows, it's simply:
gradlew hello
To tell Gradle to use this solution file as the build script instead of the
default build.gradle, use:
./gradlew -b solution.gradle hello
*/

五:Daemon介绍

org.gradle.daemon=true

    Gradle需要大量的工作才能启动,这主要是因为它需要加快Java虚拟机的实例,使用gradle daemon 可以缩短启动时间,后台程序只是在操作系统后台等待,并执行一些有用的操作,系统指示Gradle使用后台程序时,后台程序流程已经启动,并会继续在后台运行,使得JBM实例保持activity状态,这使得后续的gradle运行可以使用相同的实例。默认情况下,Andorid Studio 在运行gradle时候,你需要明确启用它。简单来说,我们应该尽量一直使用后台程序,通过使用后台程序,我们可以享受很多性能优势,后续gradle还会进一步增强这些优势。

学习更多




关注我们

以上是关于Gradle(Task)-HelloWorld!的主要内容,如果未能解决你的问题,请参考以下文章

动态任务

看懂Gradle脚本- Groovy语法之运算符重载

Gradle —— 运行自己的应用

深入理解gradle中的task

深入理解gradle中的task

Gradle自定义一个task