JVM 动态脚本语言,Groovy 2.4.2/2.3.11 发布

n7w77 10年前

JVM 动态脚本语言,Groovy 2.4.2/2.3.11 发布

Groovy是一种基于JVM的敏捷开发语言,它结合了Python、Ruby和Smalltalk的许多强大的特性。

Groovy 主要的特点包括:

  • 是一个基于Java虚拟机的敏捷动态语言

  • 构建在强大的Java语言之上 并添加了从Python,Ruby和Smalltalk等语言中学到的诸多特征

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

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

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

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

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

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

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

Groovy 2.4.2 发布,此版本现已提供下载:

更新内容如下:

Bug 修复

  • [GROOVY-3519] - Compilation error incorrectly thrown for covariant return types when original method is private

  • [GROOVY-7008] - JsonOutput / Groovy JSON Builder do not escape special characters in map keys

  • [GROOVY-7034] - groovydoc for package-info embeds doc within the <h2> tag -- creates malformed HTML

  • [GROOVY-7045] - commands return value false is ignored

  • [GROOVY-7047] - Static inner class crashes compiler when it references parent's this

  • [GROOVY-7182] - Static type error when using generic methods and Closures as parameters

  • [GROOVY-7191] - CompileStatic Will Not Allow Instance Method In Trait To Call Static Method

  • [GROOVY-7211] - @CompileStatic: A method which has default value parameter and generic return type will cause type checking error

  • [GROOVY-7242] - calling trait method inside closure causes compiler error when CompileStatic is used

  • [GROOVY-7281] - IOGroovyMethods.withStream should use the stream type as the ClosureParam, not simply InputStream

  • [GROOVY-7290] - Shell Does Not Accept Triple Double Quote

  • [GROOVY-7299] - Cannot create two lists of length 1000

  • [GROOVY-7308] - Change In MetaClass Behavior

  • [GROOVY-7309] - Incorrect args processing in GroovyShell.run(Reader, String, List)

  • [GROOVY-7310] - getGeneratedMethods is missing from the type checking DSL

  • [GROOVY-7322] - Problem With Static Trait Methods

  • [GROOVY-7324] - Incomplete generic type inference for list.property notation

  • [GROOVY-7327] - TypeChecking Error when combining generic method and Java Enum

  • [GROOVY-7332] - Groovysh help and doc commands should use groovy-lang.org instead of groovy.codehaus.org

  • [GROOVY-7333] - Incorrect inferred type in instanceof check of array

  • [GROOVY-7339] - DocGenerator doesn't understand generics placeholders

  • [GROOVY-7343] - Access to java.lang.Object is forbidden

  • [GROOVY-7344] - JsonSlurper parses badly formatted numbers.

改进

  • [GROOVY-4136] - gapi document generation ignores access modifiers set on groovydoc

  • [GROOVY-7257] - groovydoc's help option is misleading

  • [GROOVY-7317] - Add primitive array sum() and sum(initialValue)

  • [GROOVY-7326] - Add FileTreeBuilder

  • [GROOVY-7347] - Optimize initialization of char constants

  • [GROOVY-7348] - Primitive char comparisons are not optimized

  • [GROOVY-7349] - Optimize foreach style loops on arrays

同时还发布了 Groovy 2.3.11 版本,此版本是个维护版本,主要是 bug 修复:

  • [GROOVY-7045] - commands return value false is ignored

  • [GROOVY-7047] - Static inner class crashes compiler when it references parent's this

  • [GROOVY-7182] - Static type error when using generic methods and Closures as parameters

  • [GROOVY-7211] - @CompileStatic: A method which has default value parameter and generic return type will cause type checking error

  • [GROOVY-7308] - Change In MetaClass Behavior

  • [GROOVY-7310] - getGeneratedMethods is missing from the type checking DSL

  • [GROOVY-7324] - Incomplete generic type inference for list.property notation

  • [GROOVY-7332] - Groovysh help and doc commands should use groovy-lang.org instead of groovy.codehaus.org

  • [GROOVY-7333] - Incorrect inferred type in instanceof check of array

  • [GROOVY-7343] - Access to java.lang.Object is forbidden

现已提供下载:

来自:http://www.oschina.net/news/60702/groovy-2-4-2-and-2-3-11