Ответ 1
Я обнаружил, что BUSL отлично работает в файлах Groovy. Это тоже автономно, поэтому вы можете использовать его в текстовом редакторе или что-то еще.
Я использую коммерческую версию Jalopy для своих проектов Java, но она не работает в файлах Groovy. IntelliJ имеет исправный форматтер, но мне не нравится, когда требуется определенная среда IDE.
Я обнаружил, что BUSL отлично работает в файлах Groovy. Это тоже автономно, поэтому вы можете использовать его в текстовом редакторе или что-то еще.
spidasoftware/format извлекает плагин groovy eclipse и предоставляет ему интерфейс командной строки.
Инструкции:
git clone [email protected]:spidasoftware/format.git && \
cd format/bin && \
./format /path/to/groovy/file
caveat: этот проект больше не поддерживается, но все еще работает на момент публикации
последний плагин eclipse сделает некоторое форматирование и рефакторинг: http://groovy.codehaus.org/Eclipse+Plugin+Refactoring
Groovy поддержка Jalopy появится в этом году. На YouTube демонстрируется крошечный предварительный просмотр, демонстрирующий плагин Eclipse:
На самом деле groovyc поставляется со встроенным форматированием (вроде). Если вы установите переменную окружения JAVA_OPTS
на -Dantlr.ast
и запустите groovyc test.groovy
файл с именем test.groovy.pretty.groovy.
Но имейте в виду: из того, что я нашел в интернете об этом, этот форматтер не настраивается и не комментирует комментарии!
Мне еще предстоит найти хорошее решение для этого, и я действительно хочу, чтобы он был одним. Что касается подсказки @Gizmomogwai, это не совсем так, как вы думаете.
Прежде всего, вам нужно экспортировать JAVA_OPTS=-Dantlr.ast:groovy
. Однако файл, созданный groovyc
, явно не "хорошенький" в том смысле, что он хорош для людей. "Симпатичный" вывод генерирует файл, который будет разбираться на следующем этапе компилятора. Эффективно это означает, что он не только разделяет комментарии, но и добавляет и изменяет новые строки и пробелы. Это определенно не подходит для проверки форматирования кода.
Spotless также форматирует Groovy. Кажется, что невозможно бежать без Gradle/Maven, хотя. :(