Soy un novato de Gradle. Quiero construir un uberjar (también conocido como fatjar) que incluya todas las dependencias transitivas del proyecto. ¿Qué líneas debo agregar a mi "build.gradle"?Construyendo un uberjar con Gradle
Esto es lo que tengo actualmente: (lo copié de algún lugar unos pocos días atrás, pero no recuerdo de dónde.)
task uberjar(type: Jar) {
from files(sourceSets.main.output.classesDir)
manifest {
attributes 'Implementation-Title': 'Foobar',
'Implementation-Version': version,
'Built-By': System.getProperty('user.name'),
'Built-Date': new Date(),
'Built-JDK': System.getProperty('java.version'),
'Main-Class': mainClassName
}
}
En su lugar, puede intentar usar el [plugin de la aplicación] (http://www.gradle.org/docs/current/userguide/application_plugin.html). – Scott
Esto funcionará siempre que no tenga ninguna dependencia. Pero una vez que su proyecto tiene dependencias, esas no se incluirán en el uberjar. –