11package org.neotech.plugin.rootcoverage
22
3+ import com.android.build.api.AndroidPluginVersion
34import com.android.build.api.artifact.MultipleArtifact
45import com.android.build.api.dsl.BuildType
56import com.android.build.api.variant.AndroidComponentsExtension
@@ -13,12 +14,15 @@ import org.gradle.testing.jacoco.plugins.JacocoPlugin
1314import org.gradle.testing.jacoco.plugins.JacocoTaskExtension
1415import org.gradle.testing.jacoco.tasks.JacocoReport
1516import org.neotech.plugin.rootcoverage.utilities.afterAndroidPluginApplied
17+ import org.neotech.plugin.rootcoverage.utilities.assertMinimumRequiredAGPVersion
1618import org.neotech.plugin.rootcoverage.utilities.fileTree
1719import org.neotech.plugin.rootcoverage.utilities.onVariant
1820import java.io.File
1921
2022class RootCoveragePlugin : Plugin <Project > {
2123
24+ private val minimumRequiredAgpVersion = AndroidPluginVersion (7 , 2 ).alpha(6 )
25+
2226 private lateinit var rootProjectExtension: RootCoveragePluginExtension
2327
2428 override fun apply (project : Project ) {
@@ -136,6 +140,7 @@ class RootCoveragePlugin : Plugin<Project> {
136140 private fun JacocoReport.addSubProjectInternal (subProject : Project ) {
137141 // Only Android modules are supported
138142 val androidComponents = subProject.extensions.getByType(AndroidComponentsExtension ::class .java)
143+ androidComponents.assertMinimumRequiredAGPVersion(minimumRequiredAgpVersion)
139144
140145 // Get the exact required build variant for the current sub-project.
141146 val buildVariant = rootProjectExtension.getBuildVariantFor(subProject)
0 commit comments