Ejecutando proyecto de Java compilado en JAR con NetBeans y Maven

Compilar proyecto de Java con NetBeans y Maven (crear jar)

En el post de hoy vamos a ver cómo generar un JAR de tu proyecto de NetBeans si usas Maven como gestor de dependencias.

Al final tendrás un archivo que vas a poder distribuir y que ejecutará toda tu aplicación de Java.

Configurando clase principal

Recomiendo hacer los siguientes pasos solo si al ejecutar el jar encuentras el mismo error que yo. Si no, no es necesario y puedes saltar hasta el siguiente apartado.

Yo había creado una aplicación con Swing y configuré la clase principal como el JFrame. Eso funcionó bien para ejecutar el programa en el IDE, pero al compilar y ejecutar tuve problemas.

Había un error que decía:

no main manifest attribute, in mi archivo.jar

Entonces investigué que se debe agregar lo siguiente al pom.xml:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <version>2.4</version>
            <configuration>
                <archive>
                    <manifest>
                        <addClasspath>true</addClasspath>
                        <mainClass>me.parzibyte.traductorswing.FramePrincipal</mainClass>
                    </manifest>
                </archive>
            </configuration>
        </plugin>
    </plugins>
</build>

Solo cambia la mainClass por tu mainClass. En mi caso mi pom completo queda así:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>me.parzibyte.traductorswing</groupId>
    <artifactId>TraductorSwing</artifactId>
    <version>1.0-SNAPSHOT</version>
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>
        <exec.mainClass>me.parzibyte.traductorswing.FramePrincipal</exec.mainClass>
    </properties>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <version>2.4</version>
                <configuration>
                    <archive>
                        <manifest>
                            <addClasspath>true</addClasspath>
                            <mainClass>me.parzibyte.traductorswing.FramePrincipal</mainClass>
                        </manifest>
                    </archive>
                </configuration>
            </plugin>
        </plugins>
    </build>    
</project>

Yo saqué el nombre de mi mainClass de la línea 11.

Compilando jar con NetBeans

Una vez configurada la clase principal ya podemos compilar presionando F11 o yendo a Run > Clean and build project. Eso va a generar un archivo jar en la carpeta target de nuestro proyecto.

Si te sirve de algo, en mi caso encontré el .jar en C:\Users\parzibyte\Documents\NetBeansProjects\TraductorSwing\target, básicamente en NetBeansProjects de mis documentos.

Nota: una cosa es compilar el .java a un .class, ya que el jar simplemente empaqueta y todo eso. Lo digo para que no haya confusiones.

Ejecutar archivo de Java compilado

Después de eso ya podemos distribuir nuestro jar. Recuerda que para ejecutarlo necesitas el JRE o el JDK, y se abre dándole doble clic o alternativamente desde la terminal con:

java -jar nombre_de_tu_jar.jar

Por ejemplo, en mi caso es (aunque igual se abre con doble clic):

java -jar TraductorSwing-1.0-SNAPSHOT.jar

Y como es una app con Swing de un simple traductor aparece lo siguiente:

Ejecutando proyecto de Java compilado en JAR con NetBeans y Maven
Ejecutando proyecto de Java compilado en JAR con NetBeans y Maven

Con esto ya podemos compilar cualquiera de nuestros proyectos de Java que hacemos en el IDE NetBeans y enviarlos a nuestros clientes, amigos o quien sea.

Por aquí te dejo más tutoriales de Java.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

1 comentario en “Compilar proyecto de Java con NetBeans y Maven (crear jar)”

  1. Amigo muchisimas gracias, me funciono tu solución, extra a esto tambien realice lo siguiente, al contruir mi Jar lo hice con la opción de contruir con dependencias “Build with Dependencies”, esto debido a que estoy trabajando con el JDK 20.

    saludos y de nuevo muchas gracias

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *