Home > Java > Collecting runtime dependencies with Maven

Collecting runtime dependencies with Maven

Maven greatly simplifies Java development as it keeps track of and downloads dependencies. This is great, but what to do when the application is about to be released? The jar files can be copied from the local repository manually, but that is a pain. A much better way is to let Maven collect them:

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-dependency-plugin</artifactId>
  <version>2.8</version>
  <executions>
    <execution>
      <id>copy-libs</id>
      <phase>prepare-package</phase>
      <configuration>
        <outputDirectory>
          ${project.build.directory}/libs
        </outputDirectory>
        <stripVersion>false</stripVersion>
        <includeScope>runtime</includeScope>
      </configuration>
      <goals>
        <goal>copy-dependencies</goal>
      </goals>
    </execution>
  </executions>
</plugin>

This copies all the transitive dependencies needed at runtime into the target/libs directory.

Advertisements
Categories: Java
  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: