Мы используем Checkstyle для обеспечения соблюдения основных правил качества кода в нашей многопроектной сборке Gradle. Некоторые из этих правил применяются ко всем типам файлов, а не только к файлам Java, но мы не можем понять, как настроить Checkstyle Plugin для просмотра чего-либо, кроме $projectDir/src/$sourceSet/java
.Как тестировать больше, чем просто java-файлы с помощью плагина Checkstyle Gradle
Одним из основных правил, которые мы хотели бы применить, является то, что символы табов никогда не используются. Соответствующие биты checkstyle.xml
:
<module name="Checker">
<module name="FileTabCharacter">
<property name="eachLine" value="true"/>
</module>
</module>
и фрагмент build.gradle
, который настраивает плагин:
apply plugin: 'checkstyle'
checkstyle {
configFile = new File(rootDir, 'checkstyle.xml')
}
В дополнение к java/**/*
мы также хотели бы проверить все файлы в conf/**/*
и www/**/*
(предполагается, что включают в себя спецификации относятся к корню исходного набора). Однако, если я пытаюсь их добавления включают в себя правила:
apply plugin: 'checkstyle'
checkstyle {
configFile = new File(rootDir, 'checkstyle.xml')
include 'conf/**/*'
include 'www/**/*'
}
мы получим следующее сообщение об ошибке:
> Could not find method include() for arguments [conf/**/*] on [email protected]763f.
Thanx. По какой-то причине я неправильно читал документы для источника и думал, что он использовался для объявления дополнительных исходных наборов. – jared
Расширение 'checkstyle' * имеет свойство' sourceSets'. –