一、安装Gradle 

1.首先确保你安装的JDK1.5或以上版本号。 

C:\Users\chengxiang.peng.QUNARSERVERS>java -version
java version "1.8.0_65"
Java(TM) SE Runtime Environment (build 1.8.0_65-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.65-b01, mixed mode)

2.从官方站点下载对应的版本号,将下载文件解压到某个文件夹; 

C:\Users\chengxiang.peng.QUNARSERVERS>gradle -v
------------------------------------------------------------
Gradle 2.2.1
------------------------------------------------------------
Build time: 2014-11-24 09:45:35 UTC
Build number: none
Revision: 6fcb59c06f43a4e6b1bcb401f7686a8601a1fb4a
Groovy: 2.3.6
Ant: Apache Ant(TM) version 1.9.3 compiled on December 23 2013
JVM: 1.8.0_45 (Oracle Corporation 25.45-b02)
OS: Windows 7 6.1 amd64

二、開始使用Gradle 

1.每一个Gradle构建都是一个脚本開始的,构建默认的脚本名称是build.gradle。

当运行gradle命令的时候。Gradle会去寻找名字为build.gradle的文件。

假设找不到,就会显示一个帮助信息。 

C:\Users\chengxiang.peng.QUNARSERVERS\GradleSources\HelloWorld>gradle
:help
Welcome to Gradle 2.2.1.
To run a build, run gradle <task> ...
To see a list of available tasks, run gradle tasks
To see a list of command-line options, run gradle --help
BUILD SUCCESSFUL
Total time: 3.132 secs

2.创建build.gradle文件,创建task叫做helloWorld,文件例如以下。并运行该任务:gradle -q helloWord; 

build.gradle文件 

task helloWorld{
//task运行的最后一个目标
doLast {
println 'Hello world!'
}
}

运行task任务helloWord,通过-q定义可选命令行选项quiet。

 

C:\Users\chengxiang.peng.QUNARSERVERS\GradleSources\HelloWorld>gradle -q helloWorld
Hello world!

3.创建新的build.gradle文件,演示gradle的task依赖dependsOn来说明task之间的依赖,Gradle和Ant非常好的集成,定义动态task,运行时指定它们的名字; 

build.gradle文件 

task startSession << {
chant()
} def chant() {
//隐含对Ant任务的使用
ant.echo(message: 'Repeat after me ...')
} //动态任务的定义
3.times {
task "yayGradle$it" << {
println 'gradle tocks'
}
} //依赖任务
yayGradle0.dependsOn startSession
yayGradle2.dependsOn yayGradle1, yayGradle0
task groupTherapy (dependsOn: yayGradle2)

运行gradle构建,运行命令gralde groupTherapy。gradle task运行顺序:startSession->yayGradle0->yayGradle1->yayGradle2->groupTherapy; 

C:\Users\chengxiang.peng.QUNARSERVERS\GradleSources\HelloWorld>gradle groupTherapy
:startSession
[ant:echo] Repeat after me ...
:yayGradle0
gradle tocks
:yayGradle1
gradle tocks
:yayGradle2
gradle tocks
:groupTherapy BUILD SUCCESSFUL Total time: 3.83 secs

三、使用Gradle的命令行 

1.gradle提供了一个叫做tasks的帮助任务来帮助你查看构建脚本和显示每一个能够使用的task。包括描写叙述该task作用的信息; 

C:\Users\chengxiang.peng.QUNARSERVERS\GradleSources\HelloWorld>gradle -q tasks 

------------------------------------------------------------
All tasks runnable from root project
------------------------------------------------------------
//任务组Build Setup,看做是多个task的集群
Build Setup tasks
-----------------
init - Initializes a new Gradle build. [incubating]
wrapper - Generates Gradle wrapper files. [incubating] //Help任务组。列出了任务名字和它们的描写叙述
Help tasks
----------
components - Displays the components produced by root project 'HelloWorld'. [incubating]
dependencies - Displays all dependencies declared in root project 'HelloWorld'.
dependencyInsight - Displays the insight into a specific dependency in root project 'HelloWorld'.
help - Displays a help message.
projects - Displays the sub-projects of root project 'HelloWorld'.
properties - Displays the properties of root project 'HelloWorld'.
tasks - Displays the tasks runnable from root project 'HelloWorld'. //假设某个task不属于不论什么一个任务组。那么它就会显示在Other tasks中
Other tasks
-----------
groupTherapy To see all tasks and more detail, run with --all.

2.查看构建脚本中定义的其它的task; 

C:\Users\chengxiang.peng.QUNARSERVERS\GradleSources\HelloWorld>gradle -q tasks - -all
… …
Other tasks
-----------
//依赖关系图的根task,以运行顺序用缩进的方式列出依赖任务的名字
groupTherapy
startSession
yayGradle0
yayGradle1
yayGradle2

四、任务运行 

1.通过在命令行中通过多个參数,一次运行多个任务。 

C:\Users\chengxiang.peng.QUNARSERVERS\GradleSources\HelloWorld>gradle yayGradle0 groupTherapy
:startSession
[ant:echo] Repeat after me ...
:yayGradle0
gradle tocks
:yayGradle1
gradle tocks
:yayGradle2
gradle tocks
:groupTherapy BUILD SUCCESSFUL Total time: 3.826 secs

2.能够使用驼峰式的缩写在命令行上运行任务,任务名字的缩写必须是唯一的,Gradle才干找到对应的任务; 

正确运行 

C:\Users\chengxiang.peng.QUNARSERVERS\GradleSources\HelloWorld>gradle yG0 gT
:startSession
[ant:echo] Repeat after me ...
:yayGradle0
gradle tocks
:yayGradle1
gradle tocks
:yayGradle2
gradle tocks
:groupTherapy BUILD SUCCESSFUL Total time: 3.8 secs

错误运行 
build.gradle文件 

task groupTherapy << {
} task generateTests << {
}
C:\Users\chengxiang.peng.QUNARSERVERS\GradleSources\HelloWorld>gradle yG0 gT
FAILURE: Build failed with an exception. * What went wrong:
Task 'yG0' not found in root project 'HelloWorld'. * Try:
Run gradle tasks to get a list of available tasks. Run with --stacktrace option
to get the stack trace. Run with --info
or --debug
option to get more log output. BUILD FAILED Total time: 4.423 secs

3.在运行任务时排除一个任务,-x參数来实现; 

C:\Users\chengxiang.peng.QUNARSERVERS\GradleSources\HelloWorld>gradle groupTherapy -x
//gradle排除了和它依赖的任务yayGradle0和startSession
yayGradle0
:yayGradle1
gradle tocks
:yayGradle2
gradle tocks
:groupTherapy BUILD SUCCESSFUL Total time: 3.511 secs

五、命令行选项 

1.-?,h,- -help:打印全部可用的命令行选项。包括描写叙述信息。 

2.-b,--build-file:运行一个特定名字的构建脚本。 

3.-i,--info:将Gradle的日志级别的改变到INFO以获得很多其它信息。 

4.-s,--stacktrace:构建在运行出现错误,有异常抛出时会打印出简短的堆栈跟踪信息。 

5.-q,--quiet:降低构建出错时打印出来的错误日志信息。 

 

六、Gradle守护进程 

1.守护进程以后台进程方式运行Gradle。一旦启动。gradle命令就会在兴许的构建中重用之前创建的守护进行,以避免启动时造成的开销; 

2.--daemon选项,守护进行仅仅会被创建一次。即时你在命令加了--daemon选项。 

3.守护进行会在3个小时空暇时之后自己主动活期。 

4.--no-daemon,手动停止守护进程; 

C:\Users\chengxiang.peng.QUNARSERVERS\GradleSources\HelloWorld>gradle groupTherapy --daemon
:startSession
[ant:echo] Repeat after me ...
:yayGradle0
gradle tocks
:yayGradle1
gradle tocks
:yayGradle2
gradle tocks
:groupTherapy BUILD SUCCESSFUL Total time: 2.171 secs

Gradle:Gradle入门的更多相关文章

  1. Gradle学习系列之一——Gradle快速入门

    这是一个关于Gradle的学习系列,其中包含以下文章: Gradle快速入门 创建Task的多种方法 读懂Gradle语法 增量式构建 自定义Property 使用java Plugin 依赖管理 构 ...

  2. Gradle学习系列之一——Gradle快速入门(转)

    这是一个关于Gradle的学习系列,其中包含以下文章: Gradle快速入门 创建Task的多种方法 读懂Gradle语法 增量式构建 自定义Property 使用java Plugin 依赖管理 构 ...

  3. AndroidStudio下gradle的入门介绍与使用

    參考: 网易云加密:http://apk.aq.163.com 网易云捕:http://crash.163.com 1 Groovy Groovy 是没有类型的 Java 代码 ,语法更简洁.形式有点 ...

  4. Gradle | Gradle项目无法导入依赖包

    Gradle | Gradle项目无法导入依赖包 背景 今天使用idea导入一个Gradle项目,使用 gradle build构建成功,但是项目还是无法正常导入依赖包,显示错误如下: 解决方案 后来 ...

  5. 【gradle】 入门

    robin@robin-PC2 /D/JavaWorkSpace/payment/alipay-wap (master)$ ./gradlew idea

  6. Gradle学习系列之一——Gradle快速入门(转)

    参考:https://www.cnblogs.com/davenkin/p/gradle-learning-1.html 记录,不做具体转载

  7. [Gradle] Gradle 构建工具的未来

    转载地址:http://www.infoq.com/cn/news/2011/04/xxb-maven-6-gradle Maven面临的挑战 软件行业新旧交替的速度之快往往令人咂舌,不用多少时间,你 ...

  8. build.gradle & gradle.properties

    一.build.gradle buildscript { ext { springBootVersion = '1.5.9.RELEASE' } repositories { maven { cred ...

  9. Gradle: Gradle Wrapper

    [Gradle 安装] 安装完毕后,记得设置一下环境变量.Environment Variables:GRADLE_HOME=D:\Program Files\Gadle\gradle-4.7Path ...

  10. [Gradle] Gradle 构建 android 应用常见问题解决指南

    转载地址:http://www.cnblogs.com/youxilua/p/3348162.html 1: 使用最新的gradle android插件 以前我们写的时候会这么写 dependenci ...

随机推荐

  1. HTTP请求与请求头

    HTTP 的请求报文分为三个部分 请求行.请求头和请求体,格式如图:一个典型的请求消息头域,如下所示: POST/GET http://download.microtool.de:80/somedat ...

  2. A - Vile Grasshoppers

    Problem description The weather is fine today and hence it's high time to climb the nearby pine and ...

  3. 关于KO信息

    最近写大论文查到KO也是可以用于分类的一种信息. 如何使用KEGG进行通路富集http://blog.sciencenet.cn/blog-364884-779116.html kegg 数据库学习笔 ...

  4. 定义maven的项目结构

    创建一个Maven 的父项目 新建一个maven项目,选中create a simple project 填写以下内容: 如下内容: Group Id :edu.zipcloud.cloudstree ...

  5. android黑科技系列——静态分析技术来破解Apk

    一.前言 从这篇文章开始我们开始我们的破解之路,之前的几篇文章中我们是如何讲解怎么加固我们的Apk,防止被别人破解,那么现在我们要开始破解我们的Apk,针对于之前的加密方式采用相对应的破解技术,And ...

  6. Java数组操作工具

    原文地址:http://blog.csdn.net/qq446282412/article/details/8913690 2013-05-11 10:27   看到网上的一段关于对数组操作的代码,觉 ...

  7. Photoshop扣除特定颜色背景

    步骤:打开ps--打开图片---选择--选择色彩范围---取样颜色(用吸管选定颜色)-- ( )再按delete键删除--点击文件--点击储存为PSD. 这样就抠除了特定范围色彩内的背景.

  8. C语言运算符类型

    算术运算符 运算符 描述 + 两个操作数相加 - 第一操作数减去第二个操作数 * 两个操作数相乘 / 分子除以分母 % 模运算和整数除法后的余数 ++ 递增操作增加一个整数值 -- 递减操作减少一个整 ...

  9. 将数据库返回的ResultSett转换成List装Map形式的方法(ResultSetToList)

    多时候想做一些关于数据库实验,如果先搭建框架太麻烦,直接得到ResultSet处理起来取值什么的也很繁琐,为此我做了一个将ResultSet转换成List<Map<String,Objec ...

  10. mvc cshtml 中赋值

    @{ var str = ""; str = item.ApplyStatus == ? ? ? ? "申请驳回" : ""; } < ...