我已经用 Java 编写了一些代码,我需要将代码转换为 Groovy,以利用 Groovy 提供的功能。有什么方法可以自动将 Java 代码转换为 Groovy 或一些现有的插件可以让我朝这个方向开始吗?
最佳答案
有趣的事实 - Groovy 已经有一个用于此目的的工具,称为 java2groovy
- 你可以在 bin
中看到它Groovy 安装目录。这是一个调用发行版中的类的包装脚本 - org.codehaus.groovy.antlr.java.Java2GroovyMain
.
不要注意添加到转换后的代码标题中的警告:
!! NOT FIT FOR ANY PURPOSE !!
和
'java2groovy' cannot be used to convert one working program into another
更严肃地说 - 我很确定代码已经很长一段时间没有更新了,而且在巅峰时期功能也不是很丰富。
我的建议与其他人所说的类似 - 如果它可以工作并经过测试,就保持原样。如果您确实需要在 Groovy 中使用它,Groovy 和 Java 之间存在一些有问题的差异,主要是由于 Groovy 使用 { } 字符作为闭包;使用这些结构(例如数组)的 Java 结构需要进行转换。另外,奇怪的是 - 没有 do
/while
Groovy 中的循环。在某些情况下,运行时行为与编译时不同,但 Java 使用编译时的行为。动态分派(dispatch)通常会产生更好的选择,因为 Groovy 着眼于类型是什么,而不是它们在编译时看到的内容。但如果您期望它是相同的,那么更好就是一个问题。
参见http://groovy.codehaus.org/Differences+from+Java了解问题的描述和一些解决方法。
关于java - 如何将Java代码自动转换为Groovy代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26584320/