Apache Groovy 2.5发布,绝对亮点是对宏的支持!
基于JVM动态语言的老将Apache Groovy发布全新的版本,其中包含突破性增强功能和前景光明的路线图!首先来看看最新版本的亮点。
新版本的绝对亮点是对宏的支持,它允许你在创建compile-time元编程扩展时直接使用Groovy语法,而不是使用内部编译器表示。
- groovy和groovyConsole现在直接运行JUnit 5测试
- Groovy CLIBuilder工具有助于处理命令行参数,现在支持注释样式定义。此外,CLIBuilder的改版版本现在支持Commons CLI和Picocli支持的解析器实现
- 重复注释
- 各种JSON自定义
- 现在可以在运行时访问方法参数的名称,JDK 8也支持该功能
- 对于AST转换,@Canonical现在是一个元注释,允许从组成注释中更灵活地使用注释属性。开发人员也可以定义一个自定义元注释
- @Canonical扩展到@TupleConstructor,@EqualsAndHashCode和@ToString注释中,注释,分发给组件注释的属性支持它们
为了使用Groovy构建,需要JDK 8或更高版本。JDK 7是Groovy 2.5支持的JRE的最低版本。
尽管如此,仍然存在一些问题:
- 用于java.time扩展的GDK文档未包含在发行版中。它将包含在第一个维护版本(2.5.1)中。
- groovy.util.CliBuilder的用户还需要包含org.codehaus.groovy:除了groovy或groovy-all之外,groovy-cli-commonsdependency在它们的编译类路径上。这将在下次维护版本发布后不再需要,但用户应该从该类别迁移出去,因为它将从下一个主要版本的Groovy中移除。
- Spock 1.1-groovy-2.4的用户在某些测试中可能会发现奇怪的ClassCastException错误。
- 结合final和@CompileStatic或final和Spock的用户可能会看到最终变量分析器中的错误。在此期间,你可能需要暂时删除finalmodifier。
- 需要groovy-xml模块并在JDK9及更高版本上运行的用户可能需要使用--add-modules java.xml.bind命令行选项来修复由JDK9 +引起的向后兼容中断。
- JDK9 +由于JDK中一些计划中的未来限制而产生包括Groovy在内的许多库的警告,但正在进行重新设计部分Groovy以减少/移除这些警告的工作。希望将警告作为临时措施的用户,可以考虑使用由JDK9 +提供的--add-opens escape子句。
还有更多
虽然Groovy 2.5充满了增强和修复的问题,但Groovy的未来路线图更值得期待,2.6和3.0版本预计在明年内发布,它们会分别针对Java 7和Java 8和9的用户。
相关推荐
软件的信雅达 2020-11-02
糖葫芦娃哈哈 2020-11-02
淡茶 2020-05-10
PHP学习笔记 2020-03-06
anvien 2020-01-08
quzhongwei 2020-01-06
淡茶 2020-01-03
tysforwork 2019-12-12
简单点好 2013-09-04
PeterHao0 2013-08-31
软件的信雅达 2019-11-19
软件的信雅达 2017-02-11
yiyilanmei 2015-04-28
无聊找点事做 2019-09-06
HaleyJenkins 2016-10-18
PeterHao0 2016-01-22
dieefer 2017-02-11
liushidexing 2016-11-03
春天花会开 2016-11-01