2016-11-04 2 views
3

я последовал за риде безупречную плагина и включал следующее в мой build.gradle:Gradle: Безупречная задача не стреляя при необходимости

apply plugin: 'java' 

spotless { 
    java { 
     eclipseFormatFile 'my-eclipse-format.xml' 
    } 
} 

Когда я бег «gradlew строить», я ожидаю Безупречные к) форматировать код автоматически, используя вышеуказанный формат; б) сделайте чек (например, spotlessJavaCheck), чтобы убедиться, что это произошло.

Вместо этого я получаю только б) часть работы. Как я могу убедиться, что a) (форматирование) происходит автоматически при выполнении шага сборки? Я не хочу явно называть «gradlew spotlessApply build», но только «gradlew build».

Я попытался добавить «сборки {dependsOn spotlessApply}, но он говорит,„не может найти свойство spotlessApply“.

ответ

1

Для дальнейшего использования, Spotless' GitHub issues лучшее место, чтобы спросить о незапятнанными. Сохраняет все это в одном месте.

Безупречный предназначен поведение, чтобы вы знаете, что есть проблема с spotlessCheck. Затем вы запускаете spotlessApply себя вручную.

проблема с делать это по-другому, что вы никогда не будете знать о плохой фиксации. Если Я передаю плохо отформатированный код, CI-сервер зафиксирует формат с spotlessApply, чем подтвердит формат, зафиксированный в spotlessCheck, и скажите «этот код хорош!», когда на самом деле кто-то что-то совершил с неправильным форматированием.

Если вы все еще хотите, что вы хотите, вы можете сделать это следующим образом:

afterEvaluate { 
    tasks.getByName('spotlessCheck').dependsOn(tasks.getByName('spotlessApply')) 
} 
Смежные вопросы