test multi instalar example deploy plugins groovy gradle

plugins - multi - Aplicar el plumero jar personalizado de gradle



gradle test (2)

El capítulo 58 de la guía del usuario contiene toda la información que necesita. En resumen:

  • Coloque su myPlugin.properties dentro de la estructura de su proyecto, en src / main / resources / META-INF / gradle-plugins /
  • Construye tu jar como lo haces habitualmente
  • En el script que desee utilizar este complemento, agregue un cierre de buildscript a algo como:

    buildscript { repositories { flatDir dirs: "build/libs" } dependencies { classpath "your.group:your-plugin:1.0.0" } }

O cualquiera que sea la configuración de repositories y dependencies que desee, pero necesita usar la configuración de classpath como lo he hecho aquí. No creo que pueda (¡ni debería!) Agregar el jar al directorio de plugins de Gradle como lo hizo.

Creé un plugin simple basado en Groovy para Gradle.

en mi archivo gradle.build tengo lo siguiente:

apply plugin: ''groovy'' dependencies { compile gradleApi() compile localGroovy() }

Todo funciona muy bien, obtengo un directorio de compilación y se genera un .jar en la carpeta lib, supongo que este es el complemento independiente.

Ahora quiero saber cómo registrar este nuevo complemento en mi instalación gradle, así que puedo aplicar el complemento: ''myPlugin''. He hecho lo siguiente:

  • Droped el complemento en la carpeta del complemento en la instalación
  • Creó el archivo myplugin.properties y lo incluyó en la carpeta META-INF
  • colocó el mismo archivo de propiedades en META-INF en el directorio src (acto de desesperación)

Bien después de cada paso cuando trato de aplicar el complemento obtengo el error:

  • Complemento con id ''myplugin'' no encontrado

¿Cómo puedo hacer esto bien?

¿Puedes indicar una lista de pasos que harán que mi complemento funcione? (Soy nuevo en gradle + groovy)

Gracias por la ayuda


Verifique las samples/customPlugin y samples/customDistribution samples en la distribución completa de Gradle (o en GitHub ). Deben tener toda la información que necesita.