Плагины, которые настраивают встроенные плагины с помощью разумных значений по умолчанию (для документирования).
Текущая цель - улучшить поддержку Android из -за типов сборки и вкусов.
Для получения подробной информации о том, что было изменено в разных версиях, см. ChangeLog.
Плагин Android Gradle 3.1.4 - 8.7.3 на Gradle 4.9 - 8.9, как указано в Руководстве по совместимости AGP, охватываются различными версиями плагина.
В настоящее время поддерживаемая версия Android Gradle Plugin 7.0.2 - 8.7.3 на Gradle 7.0 - 8.9, где совместим.
| AGP → Gradle ↓ | 3.1.x | 3.2.x | 3.3.x | 3.4.x | 3.5.x | 3.6.x | 4.0.x | 4.1.x | 4.2.x ^3 | 7.0.x | 7.1.x | 7.2.x | 7.3.x | 7.4.x | 8.0.x | 8.1.x | 8.2.x | 8.3.x | 8.4.x |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 4.4 - 4.8.1 | 0,5 - 0,7 | ^1 | |||||||||||||||||
| 4.9 - 4.10 | 0,8 - 0,14 | 0,7 - 0,14 | |||||||||||||||||
| 4.10.1 - 5.1 | ❓ | 0,8 - 0,14 | 0,8 - 0,14 | ||||||||||||||||
| 5.1.1 - 5.4 | ❓ | ❓ | 0,9 - 0,14 | 0,9 - 0,15,1 | |||||||||||||||
| 5.4.1 - 5.6.3 | ❓ | ❓ | 0,9 - 0,15,1 | 0,9 - 0,15,1 | Как дела. | ||||||||||||||
| 5.6.4 | ❓ | ❓ | ❓ | ❓ | 0,10 - 0,15,1 | 0,10 - 0,15,1 | |||||||||||||
| 6.0 - 6.1 | ❓ | ❓ | ❓ | ❓ | 0,11 - 0,15,1 | 0,11 - 0,15,1 | |||||||||||||
| 6.1.1 - 6.4.1 | ❓ | ❓ | ❓ | ❓ | 0,11 - 0,15,1 | 0,11 - 0,15,1 | 0,11 - 0,15,1 | ||||||||||||
| 6.5 - 6.7 | ❓ | ❓ | ❓ | ❓ | 0,11 - 0,15,1 | 0,11 - 0,15,1 | 0,11 - 0,15,1 | 0,11 - 0,15,1 | |||||||||||
| 6.7.1 - 6.9.4 ^3 | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | 0,11 - 0,15,1 | 0,11 - 0,15,1 | ||||||||||
| 7.0 - 7.1.2 | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | 0,13 - 0,15,1 | 0,13 - ∞ | |||||||||
| 7.2 | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | 0,13 - 0,15,1 | 0,13 - ∞ | 0,14 - ∞ | ||||||||
| 7.3 - 7.3.3 | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | 0,13 - 0,15,1 | 0,13 - ∞ | 0,14 - ∞ | 0,14 - ∞ | |||||||
| 7.4 - 7.4.2 | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | 0,14 - 0,15,1 | 0,14 - ∞ | 0,14 - ∞ | 0,14 - ∞ | 0,15 - ∞ | ||||||
| 7.5 - 7.5.1 | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | 0,14 - 0,15,1 | 0,14 - ∞ | 0,14 - ∞ | 0,14 - ∞ | 0,15 - ∞ | 0,15 - ∞ | |||||
| 7.6 - 7.6.1 | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | 0,14 - 0,15,1 | 0,14 - ∞ | 0,14 - ∞ | 0,14 - ∞ | 0,15 - ∞ | 0,15 - ∞ | |||||
| 8.0 - 8.2 | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | 0,15 - ∞ | 0,16 - ∞ | 0,16 - ∞ | |||
| 8.3 | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | 0,17 - ∞ | 0,17 - ∞ | 0,17 - ∞ | 0,17 - ∞ | ||
| 8.4 - 8.5 | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | 0,17 - ∞ | 0,17 - ∞ | 0,17 - ∞ | 0,17 - ∞ | 0,17 - ∞ | |
| 8.6 - 8.7 | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | 0,17 - ∞ | 0,17 - ∞ | 0,17 - ∞ | 0,17 - ∞ | 0,17 - ∞ | 0,17 - ∞ |
| 8.8 - 8.9 | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ | 0,18 - ∞ | 0,18 - ∞ | 0,18 - ∞ | 0,18 - ∞ | 0,18 - ∞ | 0,18 - ∞ |
Есть разные способы использовать плагин Gradle, выберите свой яд ниже.
plugins ) plugins {
id( " net.twisterrob.gradle.plugin.quality " ) version " x.y "
}buildscript ) buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath( " net.twisterrob.gradle:twister-quality:x.y " )
}
}
// Kotlin
apply(plugin = " net.twisterrob.gradle.plugin.quality " )
// Groovy
apply plugin : " net.twisterrob.gradle.plugin.quality "buildSrc/build.gradle(.kts) repositories {
mavenCentral()
}
dependencies {
implementation( " net.twisterrob.gradle:twister-quality:x.y " )
}build.gradle(.kts) // Kotlin
apply(plugin = " net.twisterrob.gradle.plugin.quality " )
// Groovy
apply plugin : " net.twisterrob.gradle.plugin.quality "Для получения дополнительной информации посмотрите папку «Примеры».
Существует встроенный отчет HTML, который собирает все результаты от всех модулей в один HTML-файл.
gradlew :violationReportHtmlСуществует встроенный консольный отчет, который собирает все результаты от всех модулей и результатов выходов в консоли.
gradlew :violationReportConsoleЭто просто сохраняет количество нарушений в файл. Хорошо для автоматизации.
gradlew :violationCountFileЭто просто терпит неудачу, если есть нарушения.
gradlew :validateViolationsПолучает результаты подмодулей и терпит неудачу, если были ошибки.
gradlew :testReport Примечание. Это изменяет задачи :*:test тест, чтобы не сработать, чтобы можно было создать целый проект, охватывающий отчет.
:lint Зависит от всех других линий и показывает краткое изложение сбоев, чтобы уменьшить необходимость прокрутки/сканирования журналов сборки. Если явно напоминает как gradlew :lint он потерпит неудачу, в противном случае (например, gradlew lint ) он просто молча добавляет себя в список задач lint вместе с другими и печатает резюме в конце.
Отключить:
afterEvaluate { tasks . named( " lint " ) . configure { it . enabled = false } }Смотрите Development.md о том, как установить этот проект.