Move to a cleaner way of creating Jacoco Ant Uber Jar.

We were relying on an internal Android Gradle Plugin class
that got removed for AGP 3.1. This change moves us to using a proper
way of creating the Jacoco Ant uber jar.

Test: ./gradlew buildOnServer

Change-Id: I33f4705699a21bec2bf608d374100b553439f9f9
diff --git a/buildSrc/init.gradle b/buildSrc/init.gradle
index d47d5e8..99d5c42 100644
--- a/buildSrc/init.gradle
+++ b/buildSrc/init.gradle
@@ -17,7 +17,6 @@
 
 import android.support.DiffAndDocs
 import android.support.gmaven.GMavenVersionChecker
-import com.android.build.gradle.internal.coverage.JacocoPlugin
 import com.android.build.gradle.internal.coverage.JacocoReportTask
 import com.android.build.gradle.internal.tasks.DeviceProviderInstrumentTestTask
 import org.gradle.api.logging.configuration.ShowStacktrace
@@ -136,6 +135,29 @@
             }
         }
     }
+    buildOnServerTask.dependsOn createJacocoAntUberJarTask()
+}
+
+def createJacocoAntUberJarTask() {
+    def myJacoco = project.configurations.create('myJacoco')
+    project.dependencies.add('myJacoco', build_libs.jacoco_ant)
+
+    return project.tasks.create(
+            name: "JacocoAntUberJar",
+            type: Jar) {
+        inputs.files myJacoco
+        from {
+            myJacoco
+                    .resolvedConfiguration
+                    .resolvedArtifacts.collect{ zipTree(it.getFile()) }} {
+            // exclude all the signatures the jar might have
+            exclude "META-INF/*.SF"
+            exclude "META-INF/*.DSA"
+            exclude "META-INF/*.RSA"
+        }
+        destinationDir file(project.distDir)
+        archiveName "jacocoant.jar"
+    }
 }
 
 def configureSubProjects() {
@@ -192,25 +214,8 @@
                             archiveName "${project.name}-${v.baseName}-allclasses.jar"
                         }
 
-                        def collectJacocoAntPackages = project.tasks.create(
-                                name: "collectJacocoAntPackages",
-                                type: Jar) {
-                            inputs.files project.configurations[JacocoPlugin.ANT_CONFIGURATION_NAME]
-                            from {
-                                project.configurations[JacocoPlugin.ANT_CONFIGURATION_NAME]
-                                        .resolvedConfiguration
-                                        .resolvedArtifacts.collect{ zipTree(it.getFile()) }} {
-                                    // exclude all the signatures the jar might have
-                                    exclude "META-INF/*.SF"
-                                    exclude "META-INF/*.DSA"
-                                    exclude "META-INF/*.RSA"
-                                }
-                            destinationDir file(project.distDir)
-                            archiveName "jacocoant.jar"
-                        }
-
                         jarifyTask.dependsOn v.getJavaCompiler()
-                        v.assemble.dependsOn jarifyTask , collectJacocoAntPackages
+                        v.assemble.dependsOn jarifyTask
                     }
                 }