Artículo 1: Crear un plugin Gradle de A a Z con el comando gradle init
Publié le 23 September 2025
Introducción
Empezar un nuevo proyecto de plugin Gradle puede parecer intimidante. Afortunadamente, Gradle proporciona un asistente interactivo potente, la tarea`init`, que genera una estructura de proyecto completa, limpia y lista para usar. Esta guía le mostrará cómo utilizar esta herramienta para crear una base de complemento sana, explicará su estructura y le mostrará cómo lanzar las primeras tareas de compilación.
Paso 1: Iniciar el asistente de proyecto
El comando`gradle init`es el punto de partida. Lanza un asistente de línea de comandos que le hace una serie de preguntas para configurar el proyecto.
Abre tu terminal en una carpeta vacía y ejecuta :
gradle init
El asistente le guiará. Aquí están las opciones a elegir para un plugin Gradle escrito en Kotlin:
-
Seleccione el tipo de proyecto para generar:Elige`Gradle plugin`.
-
Seleccione el lenguaje de implementación:Elige`Kotlin`.
-
Seleccionar DSL de script de construcción:elijan`Kotlin`.
-
Nombre del proyecto:Ingrese un nombre para su proyecto (ej:`site-baker`).
-
ID del plugin:Asigna un identificador único a tu plugin (ejemplo:`com.cheroliv.site-baker`).
-
Clase del complemento:Especifique el nombre de la clase de implementación (ej:`com.cheroliv.SiteBakerPlugin`).
Una vez finalizado, Gradle genera un árbol de archivos completo.
Paso 2: Comprender la estructura generada
El asistente crea una estructura de proyecto multi-módulos, separando el proyecto raíz del código fuente del plugin mismo.
.
├── gradle/
│ └── wrapper/
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── plugin/
│ ├── build.gradle.kts
│ └── src/
│ ├── main/
│ │ └── kotlin/
│ │ └── com/cheroliv/SiteBakerPlugin.kt
│ ├── test/
│ │ └── kotlin/
│ │ └── com/cheroliv/SiteBakerPluginTest.kt
│ └── functionalTest/
│ └── kotlin/
│ └── com/cheroliv/SiteBakerPluginFunctionalTest.kt
└── settings.gradle.kts
Archivos y carpetas clave
-
settings.gradle.kts: Este archivo en la raíz define los módulos incluidos en la compilación. Aquí, incluye el subproyecto`plugin`.
[source,kotlin] ---- rootProject.name = "site-baker include("plugin") </think>