Как обеспечить соблюдение единообразного формата кода Java?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как обеспечить соблюдение единообразного формата кода Java?

Сообщение Anonymous »

Я ищу способ заставить разработчиков использовать одни и те же правила форматирования кода Java. Мои требования:
  • Интеграция Gradle

    Задача, которая проверяет правильность форматирования кода. Это будет использоваться в CI, чтобы вызвать сбой сборки в случае отправки неправильно отформатированного кода.
  • Задача, исправляющая неправильно отформатированный код (неплохо иметь)
[*]Интеграция IntelliJ
  • Неправильно отформатированный код можно исправить в IDE с помощью команды «Переформатировать» Действие «Код»
  • Код, сгенерированный средой IDE (например, генерация метода получения/установки), соответствует правилам
[*]Поддерживает правила форматирования Java OpenJDK/Oracle

В настоящее время я использую Spotless со следующей конфигурацией

Код: Выделить всё

spotless {
java {
toggleOffOn()
eclipse().configFile("${project.rootDir}/tools/eclipse-java-formatter.xml")
indentWithSpaces()
removeUnusedImports()
}
}
Для интеграции с IntelliJ я установил плагин Eclipse Code Formatter и настроил его на использование тех же правил, что и Spotless.
Этот подход соответствует всем вышеуказанным требованиям, за исключением версии 2.2, т. е. любой код, сгенерированный IntelliJ, должен быть переформатирован, прежде чем он будет соответствовать правилам форматирования. Еще одна проблема заключается в том, что порядок импорта произвольно изменяется при переформатировании кода. Это приводит к множеству ложных изменений, что усложняет проверку запросов на включение.
Есть ли другой подход (например, CheckStyle), который не страдает этими недостатками?
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»