Существует ли средство форматирования исходного кода для Groovy?
-
02-07-2019 - |
Вопрос
Я использую коммерческую версию Jalopy для своих Java-проектов, но она не работает с файлами Groovy.У IntelliJ есть исправный форматировщик, но мне не нравится требовать конкретной IDE.
Решение
Я обнаружил, что АВТОБУС действительно хорошо работает с заводными файлами.Он тоже автономный, так что вы можете использовать его из своего текстового редактора или чего-то еще.
Другие советы
программное обеспечение spidasoftware/формат извлекает плагин 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
Поддержка Groovy для Jalopy появится позже в этом году.На YouTube есть небольшой предварительный просмотр, демонстрирующий плагин Eclipse:
На самом деле groovyc поставляется со встроенным форматером (что-то вроде).Если вы зададите переменную окружения JAVA_OPTS
Для -Dantlr.ast
и бежать groovyc test.groovy
создается файл с именем test.groovy.pretty.groovy.
Но будьте бдительны:Из того, что я нашел в Интернете по этому поводу, этот форматировщик не настраивается и удаляет комментарии!
Мне еще предстоит найти хорошее решение для этого, и я действительно хотел бы, чтобы оно нашлось.Что касается совета @Gizmomogwai, то он работает не совсем так, как вы думаете.
Прежде всего, вам необходимо экспортировать JAVA_OPTS=-Dantlr.ast:groovy
.Однако файл, созданный groovyc
явно не "симпатичная" в том смысле, что она симпатична людям."Красивый" вывод генерирует файл, который будет проанализирован на следующем этапе компилятора.Фактически это означает, что он не только удаляет комментарии, но также добавляет и изменяет символы новой строки и пробелы.Это определенно нет подходит для проверки форматирования кода.
Безупречный также форматирует groovy.Однако, похоже, невозможно запустить без gradle / maven.:(