What is actually the difference between these two files, groovy-all-2.2.1.jar
and groovy-all-2.2.1-indy.jar
, available in the GROOVY_HOME\embeddable
directory?
I have not used the indy file so far and I am curious to know what it is used for.
Thanks!
The indy
jar is a Java 7 compiled version of groovy with support for the new InvokeDynamic
bytecode.
From the Invoke Dynamic pages here:
Since Groovy 2.0, we added support for the JVM invokedynamic instruction. This instruction is supported since Java 7 and is a new bytecode instruction in the JVM that allows easier implementation of dynamic languages. This instruction will also be used internally, by the JVM, for the upcoming lamdba support in Java 8.
This means that unlike APIs, AST transformations or syntactic sugar, this feature is not visible to the developer or the end user. It is a compilation and runtime feature only
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With