Как настроить подключаемый модуль Gradle google- java -format для запуска goJF на этапе сборки? - PullRequest
2 голосов
/ 04 апреля 2020

Мы подключили https://github.com/sherter/google-java-format-gradle-plugin в наш проект в соответствии с файлом readme.

Мы также подключили модуль pre-commit, чтобы запустить плагин перед фиксацией, что гарантирует выполнение всего кода. в списке изменений форматируется перед его нажатием, что позволяет избежать ошибок в Jenkins при запуске задачи verGJF.

Но мы должны помнить, что нужно запускать goJF локально перед запуском ./gradlew build или сборкой с ошибками форматирования плагин и настройка плагина save-actions для форматирования при сохранении.

Но это слишком много дополнительных настроек, которые разработчик должен запомнить до 1031 *, плюс это означает, что они не могут форматировать код так, как они хочу работать с ним и переформатировать его только в момент сборки или фиксации.

Мы бы предпочли полностью универсальное решение, чтобы задача goJF запускалась до build задание (и до * 10 25 * задача, которая уже связана с задачей build с помощью плагина gdle для формата google- java).

Мы не могли понять, как это сделать. Кто-то еще знает?

1 Ответ

2 голосов
/ 04 апреля 2020

Звучит так, как будто вы хотите всегда гарантировать, что код правильно отформатирован до запуска задачи verifyGoogleJavaFormat (и может пожаловаться). В этом случае я бы просто сделал задачу googleJavaFormat зависимой от задачи verifyGoogleJavaFormat. В вашем файле build.gradle после применения плагина форматирования google- java просто добавьте следующее:

verifyGoogleJavaFormat.dependsOn(tasks.googleJavaFormat)

В качестве альтернативы, если вы действительно хотите запускать средство форматирования кода только тогда, когда * Задание 1008 * выполняется (в отличие от запуска только задания verifyGoogleJavaFormat), вы можете добавить это вместо:

build.dependsOn(tasks.googleJavaFormat)
verifyGoogleJavaFormat.mustRunAfter(tasks.googleJavaFormat)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...