自动Java到Scala源代码转换?

Ale*_*x R 42 java scala code-conversion

(是的,我知道我可以从Scala调用Java代码;但这没有意义;我想删除Java代码,而不是保留它并且必须查看它并永远保持它!)

是否有任何实用程序将Java源代码转换为Scala源代码?

我认为理论上应该有可能以最小的损失完成.

我发现了这个,但它似乎不活跃,可能是有缺陷/不完整的... http://sourceforge.net/projects/java2scala/

任何替代品?

ret*_*nym 35

IntelliJ有点,sorta,这样做.您需要使用Java源打开项目.然后,您可以将表达式,方法或整个类复制/粘贴到.scala文件中.这将转换为等效的Scala代码.

转换的保真度并不完美,因此,它还不支持批量转换.

我建议使用最新版本的IntelliJScala插件.社区版是免费的.

除此之外,Paul Phillips曾经开始实施Scalify项目,将代码从Java翻译成Scala(或者,可能是您最喜欢的语言),甚至在此过程中对其进行改进!他在这个视频中解释了这个概念.然而,这种努力停滞不前,大概是因为他把注意力转向直接贡献给Scala编译器和标准库.

  • 优秀.我会尽快尝试IntelliJ.我无法相信有些人甚至认为将角括号转换为方括号并将类型声明移动到':'的另一侧等琐碎的东西应该是手工完成的!他们一定不要认真:-) (10认同)
  • 真棒.非常高兴这个IntelliJ功能. (2认同)
  • 这是Paul Phillips的Scalify项目的可用分支(似乎不再维护):https://github.com/mbana/scalify此外,还有http://javatoscala.com. (2认同)

Eug*_*nov 25

在IntelliJ IDEA中,theres是一个名为"Convert to Scala"的重构.它位于Refactor菜单下(安装Scala插件后)Ctrl + Shift + G. 所以你不需要玩复制/粘贴.

只要确保你打开了一个java文件,如果它是scala或其他文件就没有这个选项.

  • 在出现此选项之前,您需要确保您的项目支持 Scala。右键单击您的项目,然后选择“添加框架支持...”并添加 Scala。 (2认同)

Tim*_*per 16

我刚刚发布了以下工具:Scalagen.我也尝试过Jatran,但是对于一些错误和难以集成感到沮丧.Scalagen是可扩展的,并附带一个Maven插件.


小智 8

您可以使用在线Java到Scala转换器,它使用Scalagen库.