我将 Jalopy 的商业版本用于我的 Java 项目,但它不适用于 Groovy 文件。IntelliJ 有一个可用的格式化程序,但我不喜欢需要特定的 IDE。
8 回答
我发现BUSL在 Groovy 文件上工作得非常好。它也是独立的,因此您可以从文本编辑器或其他任何工具中使用它。
您可以通过带有 --format 选项的命令行使用 npm-groovy-lint :)
spidasoftware/format提取 groovy eclipse 插件并为其提供命令行界面。
指示:
git clone git@github.com:spidasoftware/format.git && \
cd format/bin && \
./format /path/to/groovy/file
警告:该项目不再维护,但截至本文发布时仍然有效
最新的 eclipse 插件会做一些格式化和重构: http: //groovy.codehaus.org/Eclipse+Plugin+Refactoring
对 Jalopy 的 Groovy 支持将于今年晚些时候推出。YouTube 上有一个展示 Eclipse 插件的小预览:
实际上 groovyc 带有一个内置的格式化程序(有点)。如果将环境变量设置JAVA_OPTS
为-Dantlr.ast
并运行groovyc test.groovy
,则会生成一个名为 test.groovy.pretty.groovy 的文件。
但请注意:从我在互联网上找到的关于此的信息,此格式化程序不可配置并且会删除注释!
Spotless也格式化了 groovy。不过,如果没有 gradle/maven 似乎是不可能运行的。:(
我还没有找到一个好的解决方案,我真的希望有一个。关于@Gizmomogwai 的提示,它并不像您想象的那样工作。
首先,您需要导出JAVA_OPTS=-Dantlr.ast:groovy
. 但是,从groovyc
它对人类来说很漂亮的意义上说,由 生成的文件显然不是“漂亮”的。“漂亮”输出生成一个文件,该文件将由编译器的下一阶段解析。实际上,这意味着它不仅会删除注释,还会添加和更改换行符和空格。它绝对不适合检查代码格式。