Gradle 教程:第一部分,安装【翻译】

原文地址:http://rominirani.com/2014/07/28/gradle-tutorial-part-1-installation-setup/

在这篇教程里,我们将主要讲解如何在我们自己的系统上安装、配置、原始版本的Gradle,并学习一些基本的Gradle命令行!Android Studio 本身集成了一个内部版本的Gradle,在安装Android Studio的时候,就自动给安装上了,这对于我们这样的小白对Gradle的理解没有帮助意义,所以我们单独将Gradle原始版本安装并配置独立出来便于我们的理解Android Studio里面的Gradle。

在开始之前,如果你想知道为什么Gradle对于编译来说是一个好工具,我建议你读一下这篇文章,虽然你不读也能读懂下面的内容,但是读一下或许能帮助打开你的思想,让你理解为什么很多公司和开发人员都在研究并应用Gradle!

下面的系列步骤将教你如何在你自己的电脑上配置Gradle!Gradle需要JDK,所以我假设你就是一个java开发者,并知道如何在你电脑上安装 JAVA JDK!

下载Gradle

在写作的时候,Gradle 已经发布到2.0,可以在这里下载

先下载那个gradle-2.0-all.zip文件到你的电脑上,并解压,我将其解压到我的电脑的D:\Program Files\gradle-2.0-all。解压后有这些文件

你可能会问:为什么要安装一个原始版本的Gradle?Android Studio 本身只是简单的集成Gradle,当你使用Android Studio 在创建APP的时候,Android Studio 会调用Gradle的命令来做一些事情,而Android Studio 是如何在做这些事情的呢?如果你安装这个单独版本的Gradle,并使用其命令行来完成,你就很容易的知道Android Studio 在如何做了,否则的话,你会误以为Android Studio如何使用Gradle就是在玩魔术。

设置环境变量

\bin 文件夹包含了gradle脚本文件(unix和windows 都有),如果你要使用这个脚本,你就需要如下步骤:

1. 创建一个环境变量 GRADLE_HOME,并指向你的Grdle的安装路径,在我的电脑,这样添加:

2. 添加 %GRADLE_HOME%\bin 到你的PATH 环境变量,这样你就可以在CMD中任意使用gradle命令行了!

检查配置

为了检查刚才所设置的变量是否成功,你打开CMD,并执行如下命令:

gradle –v

如果配置成功就会有如下结果:

如果你没有看到这样的内容,那就检查一下路径是否正确。

关于Groovy

只要有Gradle就应该有Groovy,离开Groovy讨论Gradle是不完整的!Groovy是一个在JVM上非常流行并且强大的语言。

Gradle使用最受欢迎的特点有:

简洁

灵活

可以照你想象的方式自由配置

Groovy在实现上面的这些特性时扮演了非常重要的角色,基本就是Groovy提供这些功能的实现。Ant与Maven在编译时使用XML文件,而Groovy语言比XML文件要灵活强大很多,因为它不仅让文件在内容上看起来更加简洁,并且它提供修改或者制定标签的强大的可编程能力,也支持闭包等最新编程语言才具有的高级特性,并且可以实时编译!

那么问题就来了,你可能就会问:我需要去学习Groovy吗?

我试着回答你,不需要!除非你真的需要不按照约定去做一些你自己需要的需求,那么你可能就需要去学习Groovy,因为Gradle的弹性与灵活性就表现在这里,你可以照你想的方式来做一切。但是对于大多数情况,你只需要使用各种build.gradle模板(包含了 Groovy DSL),根本就不需要学习Groovy!

所以,要理解Gradle不需要你去好好的学习Groovy,当然如果你想理解Groovy的全部强大功能,你也可以自己去学习。这肯定会是有好处的!

Groovy在默认安装Gradle的时候,就已经安装了一个内部版本了,所以你不需要再去下一个独立版本的Groovy!

基本Gradle命令

我们还没有写任何源代码或者编译文件(Gradle),所以一会我们就来写。现在先来试试下面这个命令行:

gradle -q help

这个命令用来展示Gradle的帮助信息

-q:用来表示dos窗口中退出信息 ,这个命令在你只需要看一些输出的时候非常有用

gradle –q tesks

这个展示一个你当前可以使用的任务列表

gradle properties

这个将展示一个属性列表,这些属性gradle已经预定配置好的,你也可以修改大多数的实行在你自己的编译文件里。这些属性给你一个暗示:Gradle在执行你的任务之前为你的项目配置会做一大堆非常繁重的工作!

我们还没有编译自己的JAVA项目,这个会在以后的系列来做,我们先要理解Groovy是如何给Gradle提供了那一整套强大的编程能力!

我们先讨论一下build.gradle文件。这个标准的文件名就是我们自己的编译文件。这个文件包含了所有你需要Gradle去执行的命令。在完成了整个教程系列之后,我们就能够非常有效的去使用这个文件去创建或者使用各种顺序的插件、任务来完成我们自己的编译、测试、运行java程序的工作!

现在,你来跟着我做:

选择一个文件夹,在里面创建一个文件build.gradle

用记事本或者其他编辑器,将下面的内容添加的build.gradle文件里

task compileTask << {

System.out.println “compiling…”

}

现在打开CMD,并定位到你所创建的文件夹(使用 cd命令,你应该会吧),执行下面的代码

gradle –q tasks

这个就会输出一个可用的各种任务(tasks)列表,并且你会注意到在输出部分,与标准任务分开的,会有一个我们自己的创建的那个任务 compileTask:

我们的编译文件(build.gradle)就是一些列的任务(task)的组合,这里就带出了第一个的概念任务(task),任务指定了gradle编译系统要为我们执行的代码。

当前我们所指定的项目被称作compileTask,就如你所看到的,我们使用了Groovy代码来定义这个任务,这个任务所要做的事情,就是简单的执行一个 System.out.println。怎么样,现在能体会Groovy是如何强大了吧!

现在,我们要如何使用命令执行这个compileTask呢?

在做这个之前,我们还有一个知识点需要理解。当我们执行一个 gradle命令时,gradle编译系统就会在当前目录寻找文件名为build.gradle的文件。如果找到了,就使用这个文件。在我们上面的例子中,gradle编译系统找到了这个文件,所以gradle编译系统就将决定这个文件里是什么样的任务,并将其任务加到gradle编译系统的可执行任务里表里面去。

那么,我们执行即不带任何参数的gradle的命令,也不指定任何要被执行的任务时,会发生什么呢?现在试试,执行吧:

gradle

你应该会看到如下的输出:

这个输出很明显的告诉你,当你执行gradle的时候,你需要指定一个任务名。比如:gradle <task>。那么就让我们就试试使用我们自己的任务会是什么效果:

gradle –q compileTask

就有一个输出消息

现在让我们增加build.gradle文件一些其他的任务,比如:

task compileTask << {

System.out.println “compiling…”

}

task buildTask <<{

System.out.println “building…”

}

现在执行下面的命令:

gradle –q tasks

你应该会看到两个列表都在otherTasks里面:

现在你就可以执行

gradle compileTask

或者

gradle buildTask

那么如果我们想创建一个默认被执行的任务,可以让我不需要制定任务名要如何做呢?

要做到上面的需求,修改build.gradle文件

defaultTasks ‘buildTask‘

task complieTask << {
    System.out.println "compling..."
}
task buildTask <<{
    System.out.println "building..."
}

现在,如果我们简单的执行gradle -q,就会有如下输出:

最后一部分要讨论的,就是任务之间的相互依赖。这个问题是这样的情况:如果buildTask执行了,那么compileTask一定要在buildTask之前执行,这样就是说buildTask依赖于compileTask。要如此做,我们需要修改build.gradle文件如下:

defaultTasks ‘buildTask‘

task compileTask << {
    System.out.println "compling..."
}
task buildTask(dependsOn:compileTask) <<{
    System.out.println "building..."
}

你再次执行gradle -q,就应该有如下输出:

我们这篇文章里所讨论的gradle只有一些非常基本的功能。把你的编译文件想象成一些列的需要被执行的任务。如果你是一个java程序猿,并且对编译处理有一些经验(ant,Maven),那么你应该知道,要编译任务东西,我们都要做编译,构建,跑测试用例,打包等等等等,但是在Gradle里面通通没有这些了,只有各种任务。

通过使用的Gradle规定的约定和插件程序,我们并不需要手动去写任何任务。就能够自己定义一些列的步骤来构建文明之间的项目!

目前有的一些插件程序有 java plugin ,war plugin,appengine plugin, android plugin等等,那些已经定义一些列你可以使用的任务,我们也将在接下来的课程里看到更多!保持进步哦……

时间: 2024-11-10 15:26:48

Gradle 教程:第一部分,安装【翻译】的相关文章

最完整的网狐棋牌-新手零基础教程 第一节:棋牌游戏的服务器基本环境的安装

最完整的网狐棋牌-新手零基础教程 第一节:棋牌游戏的服务器基本环境的安装 百度云在线播放地址:http://pan.baidu.com/s/1pJwO50R 密码:t0sm  解压密码:www.ttkmwl.com ----------------------------------------------------------------- 通天源码论坛!专注源码分享,本论坛不仅有web源码,还有棋牌源码,游戏源码,android源码! 致力于打造中国最大的源码分享平台!我们期待您的加入!只

《Django By Example》第一章 中文 翻译 (个人学习,渣翻)

书籍出处:https://www.packtpub.com/web-development/django-example原作者:Antonio Melé 2016年12月10日发布(没有进行校对,有很多错别字以及模糊不清的语句,请大家见谅) 2017年2月7日精校完成(断断续续的终于完成了第一章精校,感觉比直接翻译还要累,继续加油) 2017年2月10日再次进行精校(感谢大牛@kukoo的精校!) (译者注:本人目前在杭州某家互联网公司工作,岗位是测试研发,非常喜欢python,目前已经使用Dj

AndroidStudio使用教程(第一弹)

AndroidStudio使用教程(第一弹) Android Studio是一套面世不久的IDE(即集成开发环境),免费向谷歌及Android的开发人员发放.Android Studio以IntelliJ IDEA为基础, 旨在取代Eclipse和ADT(Android开发者工具)为开发者提供更好的开发工具. 运行相应速度.智能提示.布局文件适时多屏预览等都比Eclipse要强,但也不能说全部都是有点现在Studio中无法在一个窗口管理多个Project, 每个Project都要打开一个窗口,或

Windsor入门教程---第一部分 获取Windsor

介绍 从开发环境的角度看,Windsor只是一个类库.不需要安装,也不需要额外的工具,你直需要获取Windsor的类库到你的电脑上就可以了. 获取 有几个方法可以获取到Windsor,可以使用包管理工具OpenWrap,也可以使用微软的NuGet,或者也可以手动下载Windsor.最简单的方法就是使用Nuget,我们接下来就是使用NoGet. 新建解方案 启动Visual Studio 新建项目---ASP.NET MVC 3 Web Application 选择Internet 和 Razor

jquery基础教程 - 第一章 JQUERY入门

Jquery基础教程 - 第一章 JQUERY入门 内容提要 1.jquery能做什么 2.jquery为什么如此出色 3.第一个jquery驱动的页面 4.纯javascript与jquery 5.开发工具 6.小结 1.jquery能做什么 取得文档中的元素 -- jQuery为准确的获得需要检查或操纵的文档元素,提供了可靠而富有效率的选择符机制. 找到所有应用了.content class样式的div中所有的P标签             $('div.content').find('p'

【Source教程】VTFEdit安装与使用方法

返回[Source教程]文章目录 一.下载与安装 下载地址在这里. 首先打开VTFEdit的下载地址. 找到网页上的Download,点击Installer,下载VTFEdit安装版. 另一个Archive则是文件版.这里我们选择安装版的原因是,VTFEdit安装版会自动关联vmt和vtf格式文件,这样我们以后在查看这些文件的时候,就会省下不少功夫. 并且以后我们需要转换其他格式的图片到vtf格式也会更便捷. 安装版会下载一个exe格式的可执行文件,我们将它保存到电脑合适的位置.比如我就选择保存

libgdx游戏引擎3D开发教程-第一章-基础教程

开卷语:我最近才开始学习游戏编程,因为想做个网游玩,所以前几天找了不少引擎来看,于是不出意料的选中了libgdx,值得感谢的是libgdx的文档很多很全,所以没有走多少弯路就成功的配置好了环境.基础教程很完善,好多大神都已经写的很详细了,但是3D方面的很少见,所以我正好要学,索性直接翻译过来,大家共同进步.注意:教程基本是从Wiki上翻译过来,外加自己的小部分理解,所以一般来说应该没什么问题,如有错误请多多指教. =========================================

Oracle12c 的安装教程图解(安装系统:windows 2008R2)

Oracle12c 的安装教程图解(安装系统:windows 2008R2) 第一节 安装和下载路径 1   官方下载路径: http://www.oracle.com/cn/products/database/enterprise-edition/overview/index.html#ct02-Download 如图:根据安装系统选择自己需要的安装包:我这里是在window系列系统安装 2 下载好了安装包:并在同一个文件夹中解压这2个安装包,把解压的文件放到同一个文件夹中 第二节 在wind

Android精通教程-第一节Android入门简介

前言 大家好,给大家带来Android精通教程-第一节Android入门简介的概述,希望你们喜欢 每日一句 If life were predictable it would cease to be life, and be without flavor. --- Eleanor Roosevelt 入门工具的安装 第一步:要下载的朋友注意了,先看完教程了解个大概,下载Android studio前,先安装jdk和IDE,Android SDK 第二步:下载jdk,提供JDK 9 地址: htt

OpenCV 第一课(安装与配置)

OpenCV 第一课(安装与配置) win10,opencv-2.4.13, 安装, vs2013, 配置 下载安装软件 官网OpenCV下载地址下载最新版本,我下载的是opencv.2.4.13,然后解压安装,我写的路径是D:\Program Files.注意本文中绿色标注的要换成你自己的安装路径. 这里得说一点,可能是因为网速太差的原因,昨天晚上下载了几次安装时都提示说"cannott open file'opencv-2.4.13.exe' as archive".我当时一直不明