从 Groovy 导入 Scala

Import Scala from Groovy

有没有一种方法,首选标准方法来导入 Scala 代码(本地 jar,或本地 maven,或远程工件)?

我们在 Grails 上使用 Groovy,我们想使用的一些库是用 Java 或 Scala 编写的。考虑到它们都是 JVM 语言,必须有一种相互作用的方式。

我在网上搜索过,但没有得到明确的答案。

做了一些简单的测试。在 hello-world 示例中,只需使用

groovy -cp the-assembly-SNAPSHOT.jar main-file.groovy

并且在 main-file.groovy 中应该有一个 import,就像在 Java/Scala

中一样

Scala 和 Java 都编译成 Java 字节码(.class 文件)并打包为 .jar 文件。它是相同的字节码,可以在同一类路径下从任何其他 JVM 语言使用。

因此您的应用程序可以混合 java 任何其他 JVM 语言生成的字节码,包括 Java、Groovy、Scala、Clojure、Kotlin 等。您可以将此类 jar 放入/lib dir(如果你的 Grails 版本支持这个;它不是首选方式)或作为 Maven 存储库(本地或远程)的依赖项。然后你可以从你的代码

中使用这样的类

参见:

PS 由于源语言的不同性质,可能与某些 类 不兼容。但总的来说应该可以。