简介
官网:http://www.gradle.org/
官网上介绍Gradle是升级版(evolved)的自动化构建工具。它可以自动构建,测试,发布,部署,同时使更多的软件包或其他类型诸如生成静态网站,文档等项目自动化。
Gradle 将Ant的功能和伸缩性与Maven的依赖管理及约定结合成一种更加高效的方式去完成构建。
它采用了Groovy 特定领域语言和诸多创新方法,提供了一种声明式的方式用合理的默认值来描述所有类型的构建工作。
Gradle正迅速成为许多开源项目和前沿企业构建系统的选择,同时也在挑战遗留的自动化构建项目。
和Maven一样,Gradle只是提供了构建项目的一个框架,真正起作用的是Plugin。
Gradle在默认情况下为我们提供了许多常用的Plugin,其中包括有构建Java项目的Plugin,还有War,Ear等。
与Maven不同的是,Gradle不提供内建的项目生命周期管理,只是java Plugin向Project中添加了许多Task,这些Task依次执行,为我们营造了一种如同Maven般项目构建周期。
特点
gradle能够完成构建、测试、发布和其他诸如软件打包、生成注释文档等等功能。
其特点包括:
l 使用简单
l 支持多方式依赖管理
l 与ant、maven和ivy有良好的相容,支持轻松地从其他构建方式迁移到gradle上
l 支持局部构建
l 支持多工程的构建
l 免费开源
Gradle插件简介
Gradle的设计理念是,所有有用的特性都由Gradle插件提供,一个Gradle插件能够:
- 在项目中添加新任务
- 为新加入的任务提供默认配置,这个默认配置会在项目中注入新的约定(如源文件位置)。
- 加入新的属性,可以覆盖插件的默认配置属性。
- 为项目加入新的依赖。
Gradle用户手册提供了一系列标准Gradle插件。
在我们为项目加入Gradle插件时,我们可以根据名称或类型来指定Gradle插件。
我们可以将下面这行代码加入到build.gradle文件中,它通过名称指定Gradle插件(这里的名称是foo):
1
|
apply plugin: 'foo'
|
另一方面,我们也可以通过类型指定Gradle插件,将下面这行代码加入到build.gradle文件中(这里的类型是com.bar.foo):
1
|
apply plugin: 'com.bar.foo'
|
如何使用
1、安装
Gradle安装和Maven一样方便,只需要,下载(http://www.gradle.org/downloads )==》解压==》配置环境变量(GRADLE_HOME & PATH),
配置好环境变量之后记得使用 source命令使新的环境变量生效。配置成功之后,可以在命令行通过 “gradle -v"验证是否安装成功。
2、 新建简单项目
在eclipse中新建一个java项目,在项目下新建build.gradle文件,内容如下:
apply plugin: 'java'
在项目目录下运行gradle build命令
(或者直接在包含gradle的ide中创建gradle项目,推荐、简单)
成功在工程的目录下,发现新生成了一个build的目录
- build/test-results目录包含每次测试执行的原始数据。
- build/reports/tests目录包含一个HTML报告,描述了测试的结果。
Java项目结构
默认的项目结构如下:
- src/main/java目录包含了项目的源代码。
- src/main/resources目录包含了项目的资源(如属性文件)。
- src/test/java目录包含了测试类。
- src/test/resources目录包含了测试资源。所有我们构建生成的文件都会在build目录下被创建,这个目录涵盖了以下的子目录,这些子目录我们会在这篇教程中提到,另外还有一些子目录我们会放在以后讲解。
部分命令说明:- assemble任务会编译程序中的源代码,并打包生成Jar文件,这个任务不执行单元测试。
- build任务会执行一个完整的项目构建。
- clean任务会删除构建目录。
- compileJava任务会编译程序中的源代码。
- tasks 得到一个可运行任务及其描述的完整列表
Maven 项目秒变 Gradle 项目
切换到你maven项目目录
1gradle setupBuild --
type
pom
gradle 1.7版本以上
回车之后
你的maven项目已经秒变gradle项目
- build/test-results目录包含每次测试执行的原始数据。
- build/reports/tests目录包含一个HTML报告,描述了测试的结果。