Apache Groovy 2.5.5 釋出,JVM 動態指令碼語言
Apache Groovy 2.5.5 已釋出,這是 GROOVY_2_5_X 分支的維護版本,強烈建議使用者升級到此版本。
該版本包含 20 項錯誤修復/改進:
Bug
[GROOVY-7647] - Incorrect line information for debug
[GROOVY-8742] - Line number information for method is confusing debugger
[GROOVY-8772] - Groovy debugger is on the wrong line when exiting a try/catch
[GROOVY-8776] - @MapConstructor with @CompileStatic: Creating static inner class instance => VerifyError: Bad type on operand stack CTE
[GROOVY-8777] - @MapConstructor with @CompileStatic: Creating inner class instance => IncompatibleClassChangeError ... does not implement the requested interface java.util.Map
[GROOVY-8868] - Static factory method does not compile anymore with 2.5.3 (was ok with 2.4.x)
[GROOVY-8876] - groovydoc fails with "java.lang.StringIndexOutOfBoundsException: String index out of range: -1" on file with no extension
[GROOVY-8881] - Inner class - qualified "this" reference cast exception inside 2 closures
[GROOVY-8882] - CS: Loop over elements of String has different element type
[GROOVY-8892] - Trait instance init blocks are called only when there are fields defined in same Trait
[GROOVY-8895] - Traits defining getter conflicts with generated getter
[GROOVY-8898] - Annotation value cannot take inline constant from enum.
[GROOVY-8914] - Error compiling static inner class that extends some other (static) inner class
[GROOVY-8931] - AstNodeToScriptVisitor - wrong "extends/implements" order
Improvement
[GROOVY-7632] - Groovy named parameters static check
[GROOVY-8872] - Decompiled parameter names don't reflect the names in the bytecode
[GROOVY-8880] - Traits - static/instance init blocks
[GROOVY-8894] - Improve performance of DGM `leftShift(OutputStream, InputStream)`
[GROOVY-8927] - String variants for take and drop
Dependency upgrade
[GROOVY-8904] - Bump junit to 5.3.2 and bump junit platform to 1.3.2
下載地址:http://www.groovy-lang.org/download.html
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。