Sunday, January 27, 2013

Crear un jar con dependencias en NetBeans con Maven

Fuente:
http://maven.apache.org/plugins/maven-assembly-plugin/usage.html


Creamos un proyecto Maven con NetBeans



Proyecto 

Listado las las dependencias que contiene este proyecto


Agregamos Dependencias maven-assembly-plugin
 seleccionar Add Dependency..

Agregar
maven-assembly-plugin



Editamos el archivo pom.xml, 
agregamos el plugin maven-assembly-plugin. especificamos la clase principal      <mainClass>org.javscaz.tallersoft.App</mainClass>

 <build>
        <plugins>
        <plugin>
        <artifactId>maven-assembly-plugin</artifactId>
        <version>2.4</version>
        <configuration>
          <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
          </descriptorRefs>
           <archive>
            <manifest>
              <mainClass>org.javscaz.tallersoft.App</mainClass>
            </manifest>
          </archive>
        </configuration>
        <executions>
          <execution>
            <id>make-assembly</id> <!-- this is used for inheritance merges -->
            <phase>package</phase> <!-- bind to the packaging phase -->
            <goals>
              <goal>single</goal>
            </goals>
          </execution>
        </executions>
      </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>2.3.2</version>
                <configuration>
                    <source>1.7</source>
                    <target>1.7</target>
                </configuration>
            </plugin>
        </plugins>
     
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <excludes>
                    <exclude>**/*.java</exclude>
                </excludes>
            </resource>
        </resources>
    </build>
 
En el proyecto seleccionar construir con dependencias

Se genera el jar que se agregara al repositorio Maven y el archivo jar que contendrá todas las dependenecias.
Archivo jar generado

en las propiedades del proyecto indicamos el numero de versión

Solo necesitamos copiar a la carpeta el archivo .jar ya que contiene todas las dependencias








3 comments:

Mortoza khan said...

This is definitely going to be an exciting plugin for web application developers. This is expected to save a significant development time. I hope AVBravo will continue working on this and will not give up like few others in similar initiative.

Mortoza

Anonymous said...

Gracias por la solución, la llevaba buscando bastante tiempo.
Un saludo.
Gustavo

Anonymous said...

Genial!!!
Muchas gracias.

Javier.