Proyecto Java con Gradle en VSC. Error: no hay ningún atributo de manifiesto principal en app.jar

Haciendo la migración de mis proyectos java a VSC, me he conseguido con éste vendito error: no hay ningún atributo de manifiesto principal en app.jar.

Estuve rompiéndome la cabeza durante mucho tiempo y sin conseguir alguna solución en google, ni en ChatGPT.

Ahora bien... la forma en como hice la migración fue, crear un proyecto Java desde VSC, con la Gradle.  Utilicé el asistente para crear el proyecto.

Luego de ésto, utilicé los comandos de gradle para generar el .jar "gradle build", ésto genera dentro de la carpeta app/build/libs los archivos para ejecutar.

Al correr ejecutarlo: java -jar app.jar

Salío el error mencionado: "no hay ningún atributo de manifiesto principal en app.jar"

Como todavía tenía proyectos en Eclipse, comparé el archivo build.gradle del proyecto nuevo y del viejo, y noté que había un apartado que no existía en el proyecto generado con el VSC. y dice así:

jar {
    manifest {
        attributes "Main-Class": "ticlab2.App"
    }
    baseName = 'ticlab2_App'
    duplicatesStrategy = DuplicatesStrategy.EXCLUDE
    from {
        configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) }
    }{
        exclude "META-INF/*.SF"
        exclude "META-INF/*.DSA"
        exclude "META-INF/*.RSA"
    }
}

y ya, con añadir ésto al proyecto en VSC, pude generar el .jar ejecutable.

Comentarios

Entradas populares de este blog

Recuperar base de datos mysql desde la carpeta data

Imagen de Fondo en Reporte iReport de JasperReport

Sistema de Gestión de Laboratorio Clínico TICLAB