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 runtimeen la carpeta build/dependencies. 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 testy que la tarea assembledepende 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)