我有一个用Scala编写的应用程序,我的一些团队成员想要一个Java版本。这是一个演示应用程序,用于使用另一个用Scala编写的API,并且他们想要一个Java版本的应用程序来能够从Java中使用该API。然而,这个应用程序相当大,我不想手动重写成Java(他们也不想学习Scala)。是否有任何工具可以从Scala代码自动生成(可读性)的Java代码?
我有一个用Scala编写的应用程序,我的一些团队成员想要一个Java版本。这是一个演示应用程序,用于使用另一个用Scala编写的API,并且他们想要一个Java版本的应用程序来能够从Java中使用该API。然而,这个应用程序相当大,我不想手动重写成Java(他们也不想学习Scala)。是否有任何工具可以从Scala代码自动生成(可读性)的Java代码?
他们希望有一个Java版本的应用程序,以便能够从Java使用API。
由于Scala类最终都是JVM字节码,因此可以从Java中使用。您能否仅打包一个包含您的类的jar供他们使用?
我认为将Scala转换回标准的Java是不可能的,因为Scala进行了一些相当低级的字节码操作。我90%确定它们做了一些无法精确转换回常规Java代码的事情。
但是有Java转Scala的翻译器。
* 不是字面上的类
您需要将.class文件反编译为Java源代码文件,注意Scala会产生更多的.class文件。
您可以使用Oracle SDK中包含的javap或jad反编译器。
有关详细说明,请阅读以下文章:
不确定这是否有效,但您可以通过Java反编译器运行类文件。
如果有用的话,结果肯定会非常丑陋。