Tarefas Personalizadas
Automatize o trabalho
Tarefas Personalizadas é uma aula grátis de Kotlin Academy no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Kotlin Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Kotlin Academy inclui 4 aulas no total.
O que é uma Tarefa do Gradle?
Uma tarefa é uma unidade de trabalho da compilação — compilar, copiar arquivos ou executar uma ferramenta. As tarefas personalizadas permitem automatizar atividades específicas do projeto.
Registrando uma Tarefa
Use tasks.register com a API de evitação de configuração. Ela é preferível à antiga tasks.create porque é lenta na inicialização.
tasks.register("hello") {
doLast {
println("Hello from Gradle")
}
}doFirst e doLast
As ações das tarefas são executadas na fase de execução. doFirst insere uma ação no início, e doLast acrescenta uma ação ao final. O código fora delas é executado durante a configuração.
tasks.register("greet") {
doFirst { println("start") }
doLast { println("end") }
}Descrição e Grupo da Tarefa
Defina group e description para que a tarefa seja exibida de forma organizada em ./gradlew tasks.
tasks.register("cleanLogs") {
group = "maintenance"
description = "Deletes generated log files"
doLast { /* ... */ }
}Tarefas Tipadas
Registre uma tarefa de um tipo integrado para reutilizar um comportamento. Copy copia arquivos de forma declarativa.
tasks.register<Copy>("copyDocs") {
from("src/docs")
into("build/docs")
}Dependências de Tarefas
Expresse a ordem com dependsOn. A dependência é executada primeiro.
tasks.register("deploy") {
dependsOn("build")
doLast { println("deploying") }
}Configurando uma Tarefa Existente
Acesse uma tarefa pré-registrada (adicionada por um plug-in) e ajuste-a.
tasks.named("test") {
// configure the existing test task
}
tasks.test {
maxParallelForks = 2
}Entradas e Saídas da Tarefa
Declarar inputs e outputs habilita a verificação de atualização: o Gradle ignora uma tarefa quando nada foi alterado.
tasks.register("generate") {
inputs.file("data/template.txt")
outputs.file("build/generated.txt")
doLast { /* generate */ }
}Compilações Incrementais
Com entradas e saídas corretas, executar novamente uma tarefa inalterada exibe UP-TO-DATE e não realiza nenhum trabalho. Isso é fundamental para a velocidade do Gradle.
Classes de Tarefas Personalizadas
Para obter uma lógica reutilizável, defina uma classe que estenda DefaultTask com um método @TaskAction.
import org.gradle.api.DefaultTask
import org.gradle.api.tasks.TaskAction
abstract class GreetTask : DefaultTask() {
@TaskAction
fun run() {
println("Hello")
}
}Executando Sua Tarefa
Invoque qualquer tarefa registrada pelo nome usando o empacotador.
// ./gradlew hello
// ./gradlew copyDocs
// ./gradlew deployVerificação Rápida
Você quer que uma ação seja executada durante a fase de execução, depois do restante do trabalho da tarefa. Qual bloco deve usar?
Recapitulação
Você pode automatizar tarefas com tarefas personalizadas:
tasks.register+doFirst/doLast- Tarefas tipadas, como
Copy, edependsOnpara definir a ordem - Declare
inputs/outputspara a verificação de atualização - Classes personalizadas
DefaultTaskcom@TaskAction
Próximo tópico: catálogos de versões.
Perguntas Frequentes
A aula “Tarefas Personalizadas” é grátis?
Sim — o texto completo de “Tarefas Personalizadas” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Kotlin Academy, atualize para CoddyKit PRO. O curso de Kotlin Academy inclui 4 aulas no total.
O que vou aprender em “Tarefas Personalizadas”?
Automatize o trabalho Você pratica Kotlin Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Kotlin Academy?
Nenhuma experiência prévia é necessária. Kotlin Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.
Quanto tempo leva a aula “Tarefas Personalizadas”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Kotlin Academy?
Sim. Cada aula de Kotlin Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- DSL do Kotlin para Gradle
- Dependências e Plug-ins
- Tarefas Personalizadas
- Catálogos de Versões