Benutzerdefinierte Tasks
Automatisieren Sie Abläufe
Benutzerdefinierte Tasks ist eine kostenlose Kotlin Academy-Lektion auf CoddyKit. Dies ist Lektion 3 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Kotlin Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Kotlin Academy-Kurs umfasst insgesamt 4 Lektionen.
Was ist ein Gradle-Task?
Ein Task ist eine Einheit von Build-Arbeit – etwa das Kompilieren, Kopieren von Dateien oder Ausführen eines Tools. Mit eigenen Tasks können Sie projektspezifische Aufgaben automatisieren.
Einen Task registrieren
Verwenden Sie tasks.register mit der API zur Vermeidung unnötiger Konfiguration. Sie wird dem älteren tasks.create vorgezogen, weil sie verzögert arbeitet.
tasks.register("hello") {
doLast {
println("Hello from Gradle")
}
}doFirst und doLast
Task-Aktionen werden in der Ausführungsphase ausgeführt. doFirst stellt eine Aktion voran, doLast fügt eine Aktion am Ende hinzu. Code außerhalb dieser Blöcke wird während der Konfiguration ausgeführt.
tasks.register("greet") {
doFirst { println("start") }
doLast { println("end") }
}Beschreibung und Gruppe eines Tasks
Setzen Sie group und description, damit der Task in ./gradlew tasks übersichtlich angezeigt wird.
tasks.register("cleanLogs") {
group = "maintenance"
description = "Deletes generated log files"
doLast { /* ... */ }
}Typisierte Tasks
Registrieren Sie einen Task eines integrierten Typs, um dessen Verhalten wiederzuverwenden. Copy kopiert Dateien deklarativ.
tasks.register<Copy>("copyDocs") {
from("src/docs")
into("build/docs")
}Task-Abhängigkeiten
Drücken Sie die Reihenfolge mit dependsOn aus. Die Abhängigkeit wird zuerst ausgeführt.
tasks.register("deploy") {
dependsOn("build")
doLast { println("deploying") }
}Einen vorhandenen Task konfigurieren
Greifen Sie auf einen vorab registrierten Task zu, der von einem Plugin hinzugefügt wurde, und passen Sie ihn an.
tasks.named("test") {
// configure the existing test task
}
tasks.test {
maxParallelForks = 2
}Eingaben und Ausgaben von Tasks
Durch das Deklarieren von inputs und outputs wird die Prüfung auf Aktualität ermöglicht: Gradle überspringt einen Task, wenn sich nichts geändert hat.
tasks.register("generate") {
inputs.file("data/template.txt")
outputs.file("build/generated.txt")
doLast { /* generate */ }
}Inkrementelle Builds
Mit korrekten Ein- und Ausgaben gibt die erneute Ausführung eines unveränderten Tasks UP-TO-DATE aus und erledigt keine Arbeit. Das ist ein zentraler Grund für Gradles Geschwindigkeit.
Eigene Task-Klassen
Definieren Sie für wiederverwendbare Logik eine Klasse, die DefaultTask erweitert und eine Methode mit @TaskAction enthält.
import org.gradle.api.DefaultTask
import org.gradle.api.tasks.TaskAction
abstract class GreetTask : DefaultTask() {
@TaskAction
fun run() {
println("Hello")
}
}Ihren Task ausführen
Rufen Sie jeden registrierten Task über seinen Namen mit dem Wrapper auf.
// ./gradlew hello
// ./gradlew copyDocs
// ./gradlew deployKurztest
Sie möchten, dass eine Aktion während der Ausführungsphase nach der übrigen Arbeit des Tasks ausgeführt wird. Welchen Block verwenden Sie?
Zusammenfassung
Mit eigenen Tasks können Sie Arbeit automatisieren:
tasks.register+doFirst/doLast- Typisierte Tasks wie
CopyunddependsOnzur Festlegung der Reihenfolge inputs/outputsfür die Prüfung auf Aktualität deklarieren- Eigene
DefaultTask-Klassen mit@TaskAction
Als Nächstes: Versionskataloge.
Häufig gestellte Fragen
Ist die Lektion „Benutzerdefinierte Tasks“ kostenlos?
Ja — der vollständige Text von „Benutzerdefinierte Tasks“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Kotlin Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Kotlin Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Benutzerdefinierte Tasks“?
Automatisieren Sie Abläufe Du übst Kotlin Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Kotlin Academy zu starten?
Keine Vorkenntnisse erforderlich. Kotlin Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 3 von 4.
Wie lange dauert die Lektion „Benutzerdefinierte Tasks“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Kotlin Academy-Lektion Code schreiben und ausführen?
Ja. Jede Kotlin Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Gradle Kotlin DSL
- Abhängigkeiten und Plugins
- Benutzerdefinierte Tasks
- Versionskataloge