Gradle 1.12 翻译——第九章 Groovy高速入口
由于时间。没办法,做笔记和翻译的同时,大约Gradle用户指南。本博客不再做相关的注意事项。而仅仅翻译和本出版物中未翻译章节。
有关其他章节翻译请注意Github该项目:https://github.com/msdx/gradledoc/tree/1.12,訪问:http://gradledoc.qiniudn.com/1.12/userguide/userguide.html
本文原创。转载请注明出处:http://blog.csdn.net/maosidiaoxian/article/details/40920093
关于我对Gradle的翻译,以Github上的项目及http://gradledoc.qiniudn.com 上的文档为准。
如有发现翻译有误的地方。将首先在以上两个地方更新。
因时间精力问题,博客中发表的译文基本不会同步改动。
第九章. Groovy高速入门
要构建一个Groovy项目。你须要使用Groovy插件。该插件扩展了Java插件,对你的项目添加了Groovy的编译功能.
你的项目能够包括Groovy源代码,Java源代码,或者两者都包括。
在其它各方面。Groovy项目与我们在第七章 Java高速入门 中所示Java项目差点儿同样
。
9.1. 一个主要的Groovy 项目
让我们来看一个样例。要使用Groovy插件,你须要在构建脚本文件其中加入下面内容:
Example 9.1. Groovy plugin
build.gradle
apply plugin: 'groovy'
注意: 此样例的代码能够在Gradle的二进制文件或源代码中的 samples/groovy/quickstart
里看到。
这段代码同一时候会将Java插件应用到project中,假设Java插件还没被应用的话。Groovy插件继承了 compile
任务
。在 src/main/groovy
文件夹中查找源文件;且继承了 compileTest
任务,在 src/test/groovy
文件夹中查找測试的源文件。这些编译任务对这些文件夹使用了联合编译,这意味着它们能够同一时候包括java和groovy源文件。
要使用groovy编译任务,还必须声明要使用的Groovy版本号以及从哪里获取Groovy库。
你能够通过在 groovy
配置中加入依赖来完毕。compile
配置继承了这个依赖,从而在编译Groovy和Java源码时。groovy库也会被包括在类路径中。
以下样例中,我们会使用Maven中央仓库中的Groovy
2.2.0版本号。
Example 9.2. Dependency on Groovy 2.2.0
build.gradle
repositories {
mavenCentral()
} dependencies {
compile 'org.codehaus.groovy:groovy-all:2.2.0'
}
这里是我们写好的构建文件:
Example 9.3. Groovy example - complete build file
build.gradle
apply plugin: 'eclipse'
apply plugin: 'groovy' repositories {
mavenCentral()
} dependencies {
compile 'org.codehaus.groovy:groovy-all:2.2.0'
testCompile 'junit:junit:4.11'
}
执行 gradle
将会对你的项目进行编译。測试和打成jar包。
build
9.2. 总结
这一章描写叙述了一个非常easy的Groovy项目。通常情况下,一个真实的项目所须要的不止于此。由于一个Groovy项目也 是 一个Java项目,
因为Groovyproject也是一个Javaproject,因此你能用Java做的事情Groovy也能做。
你能够參阅 第24章 Groovy插件 去了解很多其它关于Groovy
插件的内容,或在Gradle发行包的 samples/groovy
文件夹,发现很多其他的Groovy
演示示例项目。
Gradle 1.12 翻译——第九章 Groovy高速入口的更多相关文章
- Gradle 1.12 翻译——第九章 Groovy快速入门
由于时间关系,没办法同时做笔记和翻译,关于Gradle的用户指南,本博客不再做相关笔记,而只对未翻译章节进行翻译并在此发表. 有关其他已翻译的章节请关注Github上的项目:https://githu ...
- R in action读书笔记(12)第九章 方差分析
第九章方差分析 9.2 ANOVA 模型拟合 9.2.1 aov()函数 aov(formula, data = NULL, projections =FALSE, qr = TRUE, contra ...
- Gradle 1.12 翻译——第十三章 编写构建脚本
有关其它已翻译的章节请关注Github上的项目:https://github.com/msdx/gradledoc/tree/1.12,或訪问:http://gradledoc.qiniudn.com ...
- Gradle 1.12 翻译——第十六章. 使用文件
有关其它已翻译的章节请关注Github上的项目:https://github.com/msdx/gradledoc/tree/1.12,或訪问:http://gradledoc.qiniudn.com ...
- Gradle 1.12翻译——第十九章. Gradle 守护进程
有关其他已翻译的章节请关注Github上的项目:https://github.com/msdx/gradledoc/tree/1.12,或访问:http://gradledoc.qiniudn.com ...
- Gradle 1.12 翻译——第十七章. 从 Gradle 中调用 Ant
有关其他已翻译的章节请关注Github上的项目:https://github.com/msdx/gradledoc/tree/1.12,或访问:http://gradledoc.qiniudn.com ...
- Gradle 1.12 翻译——第十四章. 教程 - 杂七杂八
有关其它已翻译的章节请关注Github上的项目:https://github.com/msdx/gradledoc/tree/1.12,或訪问:http://gradledoc.qiniudn.com ...
- Gradle 1.12 翻译——第十五章. 任务详述
有关其他已翻译的章节请关注Github上的项目:https://github.com/msdx/gradledoc/tree/1.12,或访问:http://gradledoc.qiniudn.com ...
- Gradle 1.12 翻译——第十二章 使用Gradle 图形用户界面
有关其他已翻译的章节请关注Github上的项目:https://github.com/msdx/gradledoc/tree/1.12,或访问:http://gradledoc.qiniudn.com ...
随机推荐
- 【29.70%】【codeforces 723D】Lakes in Berland
time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard o ...
- 【45.65%】【codeforces 560B】Gerald is into Art
time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard o ...
- Django之settings.py 的media路径设置
在一个 models 中使用 FileField 或 ImageField 需要以下步骤: 1. 在你的 settings.py文件中, 定义一个完整路径给MEDIA_ROOT 以便让 Django在 ...
- UUIDUtils工具类
原理是根据自身的操作系统和电脑硬件生成的一个32位的随机字符串,如果是一台电脑使用的话,一年不会重复,经过java之后貌似编程了36位,多了4个"-",下面是代码实现: impor ...
- 数据结构与算法——常用高级数据结构及其Java实现
前文 数据结构与算法--常用数据结构及其Java实现 总结了基本的数据结构,类似的,本文准备总结一下一些常见的高级的数据结构及其常见算法和对应的Java实现以及应用场景,务求理论与实践一步到位. 跳跃 ...
- 通过getElementById来取得Form里的表单元素
<1> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>湖南易通 ...
- ANR问题分析实例
ANR监测机制包含三种: Service ANR,前台进程中Service生命周期不能超过20秒,后台进程中Service的生命周期不能超过200秒. 在启动Service时,抛出定时消息SERVIC ...
- 【bzoj2809】派遣 (左偏树)
传送门 题目分析 每个节点都是一颗(大根堆)左偏树,先按bfs序存入数组,然后倒着从底层开始:如果当前节点的子树sum > m 那么就把根节点删去,然后统计更新答案,并将这棵树和父节点合并. c ...
- RabbitMQ 延迟队列实现订单支付结果异步阶梯性通知
在第三方支付中,例如支付宝.或者微信,对于订单请求,第三方支付系统采用的是消息同步返回.异步通知+主动补偿查询的补偿机制. 由于互联网通信的不可靠性,例如双方网络.服务器.应用等因素的影响,不管是同步 ...
- MapReduce 经典案例手机流量排序的分析
在进行流量排序之前,先要明白排序是发生在map阶段,排序之后(排序结束后map阶段才会显示100%完成)才会到reduce阶段(事实上reduce也会排序),.此外排序之前要已经完成了手机流量的统计工 ...