闪电下载吧 最新软件 免费软件 绿色软件

网络资源 软件专题

您的位置:闪电下载吧_绿色免费软件下载网站 > 网络资源 > 软件教程 > Gradle 3.2 发布Groovy 构建工具及详细介绍

Gradle 4.1 Bin 官方正式版

Gradle 是一个基于 Apache Ant 和 Apache Maven 概念的项目自动...
授权:共享软件类型:国产软件大小:未知环境:Win2003,WinXP,Win2000,Win9X语言:简体中文时间:2017-08-08
立即下载领取礼包

Gradle 3.2 发布Groovy 构建工具及详细介绍

软件教程 发布日期:2016-11-23  浏览: 次 网友评论
gradle最新版本 v4.1.0官方版
  • 授权:共享软件
  • 类型:国产软件
  • 语言:简体中文
  • 大小:未知
  • 日期:2017-08-08
  • 环境:Win2003WinXPWi...

Gradle就是可以使用Groovy来书写构建脚本的构建系统,支持依赖管理和多项目,类似Maven,但比之简单轻便。

Groovy 构建工具详细介绍

基本特点
1、 构建在强大的Java语言之上 并 添加了从Python,Ruby和Smalltalk等语言中学到的 诸多特征,例如动态类型转换、闭包和元编程(metaprogramming)支持。。

2、为Java开发者提供了 现代最流行的编程语言特性,而且学习成本很低(几乎为零)。

3、 支持DSL(Domain Specific Languages领域定义语言)和其它简洁的语法,让代码变得易于阅读和维护。

4、受检查类型异常(Checked Exception)也可以不用捕获。

5、 Groovy拥有处理原生类型,面向对象以及一个Ant DSL,使得创建Shell Scripts变得非常简单。

6、在开发Web,GUI,数据库或控制台程序时 通过 减少框架性代码 大大提高了开发者的效率。

7、支持单元测试和模拟(对象),可以 简化测试。

8、无缝集成 所有已经存在的 Java对象和类库。

9、直接编译成Java字节码,这样可以在任何使用Java的地方 使用Groovy。[2]

10、支持函数式编程,不需要main函数。

11、一些新的运算符。

12、默认导入常用的包。

13、断言不支持jvm的-ea参数进行开关。

14、支持对对象进行布尔求值。

15、类不支持default作用域,且默认作用域为public。

16、groovy中基本类型也是对象,可以直接调用对象的方法。

动态类型


类型对于变量,属性,方法,闭包的参数以及方法的返回类型都是可有可无的,都是在给变量赋值的时候才决定它的类型, 不同的类型会在后面用到,任何类型都可以被使用,即使是基本类型 (通过自动包装(autoboxing)). 当需要时,很多类型之间的转换都会自动发生,比如在这些类型之间的转换: 字符串(String),基本类型(如int) 和类型的包装类 (如Integer)之间,可以把不同的基本类型添加到同一数组(collections)中。
闭包
闭包就是可以使用参数的代码片段,每个闭包会被编译成继承groovy.lang.Closure类的类,这个类有一个叫call方法,通过该方法可以传递参数并调用这个闭包.它们可以访问并修改在闭包创建的范围内的变量,在闭包内创建的变量在闭包被调用的范围内同样可以被引用, 闭包可以保存在变量中并被作为参数传递到方法中。

语法编辑


Groovy 语法与Java 语言的语法很相似,虽然 Groovy 的语法源于Smalltalk和Ruby这类语言的理念,但是可以将它想像成 Java 语言的一种更加简单、表达能力更强的变体。(在这点上,Ruby与 Groovy 不同,因为它的语法与 Java 语法差异很大。)
许多 Java 开发人员喜欢 Groovy 代码和 Java 代码的相似性。从学习的角度看,如果知道如何编写 Java 代码,那就已经了解 Groovy 了。Groovy 和 Java 语言的主要区别是:完成同样的任务所需的 Groovy 代码比 Java 代码更少。
类编辑
Groovy类和java类一样,完全可以用标准java bean的语法定义一个Groovy类。但作为另一种语言,可以使用更Groovy的方式定义类,这样的好处是,可以少写一半以上的javabean代码。
(1)不需public修饰符
如前面所言,Groovy的默认访问修饰符就是public,如果Groovy类成员需要public修饰,则根本不用写它。
(2)不需要类型说明
同样前面也说过,Groovy也不关心变量和方法参数的具体类型。
(3)不需要getter/setter方法
在很多ide(如eclipse)早就可以为程序员自动产生getter/setter方法了,在Groovy中,不需要getter/setter方法--所有类成员(如果是默认的public)根本不用通过getter/setter方法引用它们(当然,如果一定要通过getter/setter方法访问成员属性,Groovy也提供了它们)。
(4)不需要构造函数
不再需要程序员声明任何构造函数,因为实际上只需要两个构造函数(1个不带参数的默认构造函数,1个只带一个map参数的构造函数--由于是map类型,通过这个参数可以构造对象时任意初始化它的成员变量)。
(5)不需要return
Groovy中,方法不需要return来返回值。
(6)不需要()
Groovy中方法调用可以省略()(构造函数除外)。

文件与类的关系编辑

在Groovy中类和文件的对应关系并不像Java中那么固定(Java中一个文件只能有一个声明为public的类和其他一些非公共的类和内嵌类) 。在同一个groovy文件中可以包含多个public的类定义。具体规则如下:

如果在一个groovy文件中没有任何类定义,它将被当做script来处理,也就意味着这个文件将被透明的转换为一个Script类型的类,这个自动转换得到的类将使用原始的groovy文件名(去掉扩展名,没有包名,在default包中)作为类的名字。groovy文件的内容被打包进

run方法,另外在新产生的类中被加入一个main方法以进行外部执行该脚本。

如果在groovy文件正好有一个类的定义,并且该类的名字与文件名称相同,那么这就和java中的类与文件的一一对应关系相同。

在一个groovy文件中可以包含多个不同可见性的类定义,并且没有强制性的要求其中有一个类的类名与文件名相同。groovyc编译器会很乐于把该文件中定义的所有的类都编译成*.class文件。如果希望能够直接调用这个groovy script,比如说在使用groovy命令行或者

在某个IDE中执行,那么应该在该文件中的第一个类中定义一个main方法。

在一个groovy文件中可以混合类的定义和脚本定义。在这种情况下,那些脚本代码将会变成直接调用的主类,所以在这种情况下不应该再定义一个和文件同名的类。

在没有经过明确的编译过程即执行时,groovy将通过文件名来查找类。在这种情况下,名称将会很重要。Groovy只能找到那些和文件名匹配的类。在找到这种名字匹配的类时,找到的文件中定义的其他类将被解析并变得对groovy可见。

语法使用


usePlugin 'groovy'

repositories {
flatDir dirs: "lib"
}

dependencies {
groovy ':groovy-all:1.7.0'
compile fileTree(dir: 'lib', includes: ['*.jar'])
runtime fileTree(dir: 'lib', includes: ['*.jar'])
}

// usage: gradle -i run
task run(dependsOn: classes) << {
captureStandardOutput(LogLevel.INFO)
ant.java(
classname: 'fox.gem.GroovyClass',
fork: true,
classpath: "${sourceSets.main.runtimeClasspath.asPath}"
)
}
以上是Gradle的构建文件build.gradle中的内容,是不是比Ant的build.xml要简单太多了?这就是“惯例”的力量。由此,我们可以了解Gradle的第一个特点:“CoC(惯例优于配置)”。只要按照Gradle的惯例,那么可以最大限度的减少build文件的内容。

Gradle 3.2 发布了,Gradle 是基于 Ant 和 Maven 理念的自动化构建工具。

更新内容:

支持增量构建,现在针对 Java 汇编、复制、归档有更优秀的 up-to-date 检查。还可以让 Gradle 将任何任务输入视为具有新的 @Classpath 注释的类路径。

Gradle 的本机构建支持的用户在此版本中获得了一个重要的工具,是很多人比较熟悉的用于经典多项目构建的 buildDependents。现在可以将新的 assembleDependents 和 buildDependents 用于本机构建。这对于你要确定自己的更改是否对依赖于它们的任何内容产生不利影响非常有用。

如果你使用IDE,并且在构建(特别是动态构建)中有很多依赖项,那么可能会需要很长的导入时间。此版本中已解决了基础问题,从而大大提高了导入时间。企业构建的一个例子显示了有100倍的改进!

Kotlin 构建脚本在 Windows 平台上编译脚本的错误已经修复,在Windows上尝试此功能更容易。

用于声明任务的快捷语法(通过<<)现在已被弃用。


本文地址:http://www.sdbeta.com/mf/2016/1118/126676.html
《Gradle 3.2 发布Groovy 构建工具及详细介绍》由闪电下载吧整理并发布,欢迎转载!

  • 标签
用户评论
关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图 - 网站标签-云服务器
有任何意见或者建议请联系邮箱:858898909[at]qq.com或点击这里给我发消息
本站部分内容收集于互联网,如果有侵权内容、不妥之处,请联系我们删除。敬请谅解!
Copyright © 2012 SDBETA.com. All Rights Reserved 豫ICP备12021367号 豫公网安备 41130302000066号闪电下载吧