我知道 Jython 和 JRuby 被移植到 JVM,Scala/Clojure 是 JVM 原生的,那么 Groovy 呢? Groovy 看起来像一种动态语言,我猜它是移植的,但它似乎也可以编译。
对于 Scala 等 JVM 原生的语言,是否有一些工具可以将代码反编译为源代码?
请您参考如下方法:
“移植”通常意味着“重新定位以继续运行”。 Groovy 旨在将 Python 和 Smalltalk 等语言的动态特性引入 Java。它被设计为 Java 的扩展,从这个意义上说,它是 JVM 和 Java 语言的 native 。 (Groovy 语言、对象模型和运行时库是 Java 的扩展。)
但听起来您是在问 Groovy 是被解释的还是被编译的。您可以使用 groovyc 将 Groovy 源代码编译为 Java .class 文件并在 JVM 中运行它们(链接到一些 Groovy 运行时库)。或者,您可以在 GroovyShell 中以交互方式运行 Groovy 源代码,但它所做的是为您增量编译、加载和运行代码。
网络搜索 [ groovy decompiler ] 为您返回一些可能性。