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。
更新内容如下:
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
现已提供下载: