#JetBrains 六折贺新春!IntelliJ IDEA,PyCharm,WebStorm,PhpStorm 优惠!
Groovy 2.4.1 发布,此版本更新内容如下:
Bug 修复
[ GROOVY-4852 ] - Constant Optimization is a little off
[ GROOVY-4918 ] - GetEffectivePojoPropertySite#acceptGetProperty may produce a NullPointerException when provided with a null 'receiver' object
[ GROOVY-6590 ] - field on primitive not recognized even if existing in wrapper type
[ GROOVY-6697 ] - Setting property in trait using "super" doesn't work
[ GROOVY-7000 ] - Support MarkupTemplateEngine integration with TemplateServlet
[ GROOVY-7173 ] - jsonslurper does not unescape Strings (sometimes) on parsing with JsonParsingUsingCharacterSource
[ GROOVY-7240 ] - Unable to start dollar slashy strings with an escaped dollar
[ GROOVY-7243 ] - @Delegate does not honor "includes" on properties - all properties are delegated
[ GROOVY-7255 ] - Problem With @CompileStatic And Static Trait Members
[ GROOVY-7261 ] - @Lazy should work in combination with @Delegate
[ GROOVY-7262 ] - There should be a TimeZone variant of the Date#parse method in DGSM
[ GROOVY-7263 ] - Problem With Static Imports
[ GROOVY-7264 ] - NPE in TypeResolver when access$XXX method generated for a method with generic types
[ GROOVY-7266 ] - CompilationFailedException can be swallowed
[ GROOVY-7267 ] - avoid hashcode based equality check without equals
[ GROOVY-7269 ] - Problem With MetaMethods and replacing MetaProperty
[ GROOVY-7273 ] - :doc command checks wrong api urls
[ GROOVY-7275 ] - SelfType class "was not matched with found receiver" trait
[ GROOVY-7276 ] - static compiler fails to eliminate dynamic property lookup
[ GROOVY-7277 ] - TemplateResource.parse handles paths containing multiple dots incorrectly
[ GROOVY-7278 ] - Error caused by @CompileStatic
[ GROOVY-7280 ] - typo: 'possible loose of precision' should be 'possible loss of precision'
[ GROOVY-7285 ] - Stackable Traits at runtime don't honor definition order
[ GROOVY-7287 ] - Problem With Trait Generics With Conflicting Names
[ GROOVY-7297 ] - StackOverflowError Related To Trait Generics
[ GROOVY-7298 ] - NPE in TypeResolver using <T>, Closure<T> and @CompileStatic
[ GROOVY-7300 ] - CompileStatic doesn't call property accessors on super classes correctly
[ GROOVY-7302 ] - LazyMap size returns incorrect result for un-built maps if same key set more than once
改进
[ GROOVY-6658 ] - Set anchors for each section in Groovy Ascii docs.
[ GROOVY-7228 ] - Minor typo in documentation for DefaultGroovyMethods.xor(left, right)
[ GROOVY-7235 ] - Groovysh code completion is not compatible with JDK 9 (Jigsaw)
[ GROOVY-7245 ] - Add primitive array join()
新特性
[ GROOVY-7224 ] - Extend @Builder InitializerStrategy to support adding the annotation to Constructors
二进制: http://dl.bintray.com/groovy/maven/groovy-binary-2.4.1.zip
源代码: http://dl.bintray.com/groovy/maven/groovy-src-2.4.1.zip
更多内容请看 这里 。
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。
在线API doc: http://tool.oschina.net/apidocs/apidoc?api=groovy