【发布时间】:2018-05-11 15:15:34
【问题描述】:
Groovy 在 2012 年的 2.0 版中添加了 --indy 选项。当时这不是默认设置,因为 invoke dynamic 需要 Java 7,而当时很多人使用 Java 6。
现在即使是即将推出的 Groovy 3.0 仍然需要 --indy 选项才能强制它使用 invoke dynamic。尽管 Groovy 3.0 需要 Java 8 或更高版本。
仍然让默认为非 indy 编译和默认运行时库为非 indy 是否有任何技术优势?我会认为现在甚至不需要非独立选项。
【问题讨论】:
-
可能是因为历史原因(我想团队希望继续支持用户在 Java 6 及更早版本上编译或运行)。此外,文档提到“从 7u21 到 7u55 的所有 JDK 7 版本在调用动态方面都有缺陷”。
标签: groovy invokedynamic