Gradle是一种构建工具,可以使用基于Groovy编程语言的内部DSL替换基于XML的构建脚本。
最近它吸引了很多关注,这就是为什么我决定仔细研究一下。
这篇博客文章是我的Gradle教程的第一部分,它有两个目标:
- 帮助我们安装Gradle
- 描述它的一些基本概念,这有助于我们理解本教程的未来部分。
让我们从了解如何安装Gradle开始。
安装Gradle
如果使用Windows或Linux,则可以按照以下步骤安装Gradle:
- 从下载页面下载二进制文件 。
- 解压缩该zip文件,然后将GRADLE_HOME / bin目录添加到PATH环境变量中。
如果在安装过程中遇到问题, 请查阅官方安装指南 。
如果使用的是OS X,则可以使用Homebrew安装Gradle。 我们可以通过在命令提示符处运行以下命令来做到这一点:
brew install gradle
我们可以通过在命令提示符下运行gradle -v命令来验证Gradle是否正常工作。 如果Gradle正常运行,我们应该看到以下输出(Windows和Linux用户自然会看到一些不同的输出):
> gradle -v------------------------------------------------------------Gradle 1.12------------------------------------------------------------Build time: 2014-04-29 09:24:31 UTCBuild number: noneRevision: a831fa866d46cbee94e61a09af15f9dd95987421Groovy: 1.8.6Ant: Apache Ant(TM) version 1.9.3 compiled on December 23 2013Ivy: 2.2.0JVM: 1.8.0 (Oracle Corporation 25.0-b70)OS: Mac OS X 10.9.3 x86_64
让我们快速看一下Gradle构建的基本概念。
Gradle构建简介
Gradle有两个基本概念:项目和任务。 这些概念的解释如下:
- 项目要么是我们构建的(例如jar文件),要么是项目(将我们的应用程序部署到生产环境)。 一个项目包含一个或多个任务 。
- 任务是执行我们的构建(例如,编译项目或运行测试)的原子单元工作。
那么,这些概念与Gradle构建有何关系? 好吧, 每个Gradle构建都包含一个或多个项目 。
这些概念之间的关系如下图所示:
我们可以使用以下配置文件来配置Gradle构建:
- Gradle构建脚本( build.gradle )指定一个项目及其任务。
- Gradle属性文件( gradle.properties )用于配置构建的属性。
- 在只有一个项目的构建中, Gradle设置文件( gradle.settings )是可选的。 如果我们的Gradle构建有多个项目,则必须执行此操作,因为它描述了哪些项目参与了我们的构建。 每个多项目构建都必须在项目层次结构的根项目中具有一个设置文件。
您可以通过阅读Gradle用户指南的第6章,获取有关Gradle构建脚本的更多信息。
让我们继续前进,了解如何使用Gradle插件向Gradle构建添加功能。
更简短的Gradle插件介绍
Gradle的设计理念是所有有用的功能都由Gradle插件提供。 Gradle插件可以:
- 将新任务添加到项目。
- 为添加的任务提供默认配置。 默认配置将新约定添加到项目中(例如,源代码文件的位置)。
- 添加用于覆盖插件默认配置的新属性。
- 向项目添加新的依赖项。
Gradle用户手册提供了标准Gradle插件列表 。
我们可以通过使用Gradle插件的名称或类型来应用Gradle插件(将插件添加到项目时使用此术语)。
通过将以下行添加到build.gradle文件中,我们可以按名称应用插件(插件的名称为foo ):
apply plugin: 'foo'
另一方面,如果要按类型应用插件(插件的类型为com.bar.foo ),则必须将以下行添加到build.gradle文件中:
apply plugin: 'com.bar.foo'
您可以通过阅读Gradle用户指南的21.1应用插件来获得有关应用插件的更多信息。
今天就这些。 让我们总结一下我们从此博客文章中学到的知识。
摘要
这篇博客文章教会了我们三件事:
- 我们了解了如何安装Gradle。
- 我们了解了Gradle构建的基本构建基块。
- 我们知道如何使用Gradle插件向我们的构建添加功能。
本教程的下一部分描述了如何使用Gradle创建一个简单的Java项目。
翻译自: https://www.javacodegeeks.com/2014/06/getting-started-with-gradle-introduction.html