有的时候,感觉技术真是一年一个样,之前呢ant式微,被maven取代,而现在呢,maven慢慢式微,又渐渐要被gradle取代,不说多了我们现在就来讲一讲gradle吧。


第一步——安装:

①安装所需:JDK1.8以上

②去官网“https://gradle.org/”下载gradle包,解压后设置环境变量。

Mac或linux的话:添加命令到初始化脚本~./profile中,命令假设gradle被安装在/opt/gradle目录下。export GRADLE_HOME=/opt/gradle;export PATH=$PATH:$GRADLE_HOME/bin。

Windows的话:添加gradl文件夹下的bin目录到环境变量中即可。

③在终端或cmd中执行语句:gradle -v , 确认gradle安装成功。

第二步——hello world

①创建一个名为“build.gradle"的文件,并写上如图代码:

task helloWorld {
doLast{
print 'hello World!'
}
}

②运行代码:gradle -q helloWorld,这里的helloWorld即对应上面定义的task,参数-q是为了告诉gradle只输出该task相关的信息。运行后我们会发现窗口输出了”hello World!"。

第三步——小试牛刀

我们写下如下代码:

task startSession {
chant()
} def chant(){
ant.echo(message: 'Repeat after me...')
} 3.times{
task "yayGradle$it" {
println 'Gradle rocks'
}
} yayGradle0.dependsOn startSession
yayGradle2.dependsOn yayGradle1, yayGradle0
task groupTherapy(dependsOn: yayGradle2)
//gradle test

①我们会发现多了关键词dependsOn,它意指依赖,gradle会确保被依赖的task总会在定义该依赖的task之前执行。

②关于chant()函数里的ant.echo()函数,这是关于gradle和ant的集成,我们后续再讲,这里只是做简单的打印处理。

③这里的3.times{}讲的是关于动态任务的定义,我们也后续再讲。

我们运行代码:gradle groupTherapy,输出如图

第四步——使用命令行

①列出所有task:gradle -q tasks --all

②执行多个任务:gradle -q task1 task2 ......

③任务缩写执行:要执行task testTest的话,可以输入指令gradle -q tT, 但需要以防缩写的task名重复。

④其他重要命令行选项,如-h ——指打印帮助信息;-b——指定特定名字的构建脚本;--offline——指构建声明的依赖必须在离线仓库中存在。

⑤若想使gradle重复运行构建,可以了解gradle守护进程方面的内容,参数是--daemon。

gradle第一篇:初入门的更多相关文章

  1. SpringBoot 第一篇:入门篇

    作者:追梦1819 原文:https://www.cnblogs.com/yanfei1819/p/10819728.html 版权声明:本文为博主原创文章,转载请附上博文链接! 前言   博主从去年 ...

  2. 第一篇 UEditor入门部署和体验

    UEditor 是由百度「FEX前端研发团队」开发的所见即所得富文本web编辑器,具有轻量,可定制,注重用户体验等特点,开源基于MIT协议,允许自由使用和修改代码. UEditor富文本编辑器,轻量, ...

  3. Vue学习记录第一篇——Vue入门基础

    前面的话 Vue中文文档写得很好,界面清爽,内容翔实.但文档毕竟不是教程,文档一上来出现了大量的新概念,对于新手而言,并不友好.个人还是比较喜欢类似于<JS高级程序设计>的风格,从浅入深, ...

  4. 我的微信小程序第一篇(入门)

    前言 微信小程序出来已经有一段时间了,已经有很多大牛都写过相关教程了,那么我为啥还要写这篇文章呢?其实仅仅是个人对微信开发的一个兴趣吧,觉得是个很有意思的事情,后面有时间可能会发更多关于小程序的文章, ...

  5. <Django>第一篇:入门的例子

    1.MVT框架 Model(模型):数据库交互相关.在这部分一般需要进行三个操作: (1)面向数据库:模型对象.列表 (2)定义模型类:指定属性及类型,确定表结构(设计表),需要迁移(生成表) (3) ...

  6. DWR第一篇之入门示例

    1. 新建maven-web项目,目录结构如下: 2. 在pom.xml里添加dwr所需的依赖 <dependency> <groupId>org.directwebremot ...

  7. 【第一篇】ASP.NET MVC快速入门之数据库操作(MVC5+EF6)

    目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...

  8. 【OpenCV入门指南】第一篇 安装OpenCV

    http://blog.csdn.net/morewindows/article/details/8225783/ win10下vs2015配置Opencv3.1.0过程详解(转) http://ww ...

  9. ElasticSearch入门 第一篇:Windows下安装ElasticSearch

    这是ElasticSearch 2.4 版本系列的第一篇: ElasticSearch入门 第一篇:Windows下安装ElasticSearch ElasticSearch入门 第二篇:集群配置 E ...

随机推荐

  1. Golang之json序列化(struct,int,map,slice)

    老规矩,直接上代码 package main import ( "encoding/json" "fmt" ) //把结构体都改小写 type User str ...

  2. Redhat安装python环境(readline模块)

    多次尝试,发现linux下安装软件: yum install readline-devel readline patch yum update python -y # 这步很重要,修复了报错 pip3 ...

  3. Java Thread系列(九)Master-Worker模式

    Java Thread系列(九)Master-Worker模式 Master-Worker模式是常用的并行设计模式. 一.Master-Worker 模式核心思想 Master-Worker 系统由两 ...

  4. SNMP++ 编译记录

    /************************************************************** 技术博客 http://www.cnblogs.com/itdef/   ...

  5. 安装及运行 RabbitMQ 服务器 (linux) 失败! 安装erlang 失败,无法继续

    文档 http://www.rabbitmq.com/install-rpm.html 安装前置条件 Before installing RabbitMQ, you must install Erla ...

  6. [转]Newtonsoft.Json 序列化和反序列化 时间格式

    本文转自:http://www.cnblogs.com/litian/p/3870975.html 1.JSON序列化 string JsonStr= JsonConvert.SerializeObj ...

  7. [leetcode] 11. Same Tree

    因为我刷题是难度不是按发布日期,所以就有可能遇到这种情况,比如这个... Given two binary trees, write a function to check if they are e ...

  8. 如何搭建eclipse+maven环境

    Maven这个个项目管理和构建自动化工具,越来越多的开发人员使用它来管理项目中的jar包.本文仅对Eclipse中如何安装.配置和使用Maven进行了介绍.完全step by step. 如果觉得本文 ...

  9. [Elixir002]节点启动后自动连接其它节点

    问题: 如何指定一个节点在启动后自动连接到别的节点上? 这个我们要使用到sys.config,这是erlang的配置文件,这个文件一般都是$ROOT/releases/Vsn下 1. 首先我们要先启动 ...

  10. centos7怎能开机设置文本界面

    rm -f /etc/systemd/system/default.target 设置命令行级别方法:ln -sf /lib/systemd/system/runlevel3.target /etc/ ...