2016-03-27 3 views
0

Ich versuche, eine Aufgabe innerhalb eines Plugins zu erstellen, die die "CompileDebugJavaWithJavac" Aufgabe aus dem Android-Plugin für Gradle erweitert.Gradle: Erstellen einer Aufgabe, die die compileDebugJavaWithJavac Task aus und Android-Projekt

Dies ist der Code i

project.task('compileAllJava', type: project.tasks.getByName('compileDebugJavaWithJavac')) << {} 

Wenn ich versuche, dieses Plugin anwenden und führe diese Aufgabe es mir einen Fehler gibt wie this`A Problem Projekt aufgetreten Konfiguration innerhalb meiner benutzerdefinierten Plugin ‚: app‘.

org.gradle.api.tasks.compile.JavaCompile_Decorated nicht

zu java.lang.Class` gegossen werden Bin ich richtig die Aufgabe erstreckt? oder ist es sogar möglich, diese Aufgabe in meinem eigenen Plugin zu erweitern?

+0

Ich bin nicht sicher, zu sehen, was Sie versuchen, hier zu erreichen. Die Fehlermeldung weist darauf hin, dass "type" ein Objekt vom Typ "Klasse" sein muss, aber Sie haben stattdessen eine Aufgabe angegeben. Versuchen Sie tatsächlich, die Abhängigkeitskette zu ändern? –

+0

Ich versuche gerade, eine Aufgabe zu erstellen, die eine exakte Kopie der Aufgabe compileDedugJavaWithJavac ist – owentdoyler

Antwort

0

Sie müssen überprüfen, ob die compileDebugJavaWithJavac zur Aufgabenerfassung hinzugefügt wird. Versuchen Sie, diese

tasks.whenTaskAdded { task -> 
    if (task.name.equals("compileDebugJavaWithJavac")) { 
    project.task('compileAllJava', type: JavaCompile, dependsOn: task) << { 
     // your code here 
    } 
    } 
} 

prüfen diesen Link, um alle Arten Aufgabe

https://docs.gradle.org/current/dsl/

Verwandte Themen