Maven Include Dependencies in JAR Artifact

From NovaOrdis Knowledge Base
Revision as of 21:45, 24 March 2017 by Ovidiu (talk | contribs)
Jump to navigation Jump to search

Internal

Overview

There are situations when we want to extract some of the dependencies and bundle them with the JAR artifact. This is done using the jar plugin and the dependency plugin together, as described below.

Configure the Maven dependency plugin to unpack dependencies, or just some of them, in the directory that will be archived by the jar plugin:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-dependency-plugin</artifactId>
    <version>3.0.0</version>
    <executions>
        <execution>
            <id>unpack-some-dependencies</id>
            <phase>prepare-package</phase>
            <goals>
                <goal>unpack-dependencies</goal>
            </goals>
            <configuration>
                <outputDirectory>${project.build.directory}/classes</outputDirectory>
                <includes>**/SimpleStateless.class</includes>
                <overWriteReleases>false</overWriteReleases>
                <overWriteSnapshots>false</overWriteSnapshots>
                <overWriteIfNewer>true</overWriteIfNewer>
             </configuration>
         </execution>
    </executions>
</plugin>