Añadir tarea al ciclo de vida

De Wiki de EGC
Saltar a: navegación, buscar

Introducir un task en el ciclo de vida. Uno que copie las dependencias a una carpeta. Esta tarea se deberá ejecutar tras las tareas jar y test, y antes de la tarea assemble.

Creación de la tarea

Una tarea se crea con task nombre { …} (cf. [1]). Si la tarea hereda el comportamiento de un tipo predefinido, entonces se usa task nombre(type: comportamiento){…} . Puede ver diferentes comportamientos bajo la etiqueta task types en [2]

Crear una tarea de tipo Copy para copiar las dependencias de la configuración runtime en la carpeta </code>build/dependencies</code>. En este ejemplo, tan solo copiará SLF4J. Añadir al build.gradle:

task copyDependencies(type: Copy) {
    into "$buildDir/dependencies"
    from configurations.runtime
}

Insertarlo en el ciclo de vida

Para insertarlo en el ciclo de vida, habrá que indicar que esta tarea depende de jar y test y que la tarea assemble depende de ésta. Una forma de hacer eso en el build.gradle es lo siguiente:

task copyDependencies(type: Copy)  {
 	dependsOn jar, test
    	into "$buildDir/dependencies"
    	from configurations.runtime
}

assemble.dependsOn(copyDependencies)