The Apache Maven team is pleased to announce the release of the Apache
Maven Shade Plugin, version 3.1.0
This plugin provides the capability to package the artifact in an
uber-jar, including its dependencies and to shade - i.e. rename - the
packages of some of the dependencies.
https://maven.apache.org/plugins/maven-shade-plugin/
You should specify the version in your project's plugin configuration:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.1.0</version>
</plugin>
You can download the appropriate sources etc. from the download page:
https://maven.apache.org/plugins/maven-shade-plugin/download.cgi
Note: This is a Java 9 support release. Be aware when using this on jars
with module descriptors; it's intended strong encapsulation (i.e. not
exported packages) will be lost. This is actually a JVM issue which is
hopefully resolved in a future version of Java.
Release Notes - Maven Shade Plugin - Version 3.1.0
** Bug
* [MSHADE-242] - Plugin does not work with Java 9
* [MSHADE-247] - NullpointerException when createSourcesJar = true and
source jar cannot be found
* [MSHADE-253] - NullPointerException if minimizeJar == true &&
packaging == pom
* [MSHADE-255] - IllegalArgumentException on relocating class
* [MSHADE-258] - RemappingClassAdapter is deprecated and throws an
exception with ASM 6.0 beta
** Improvement
* [MSHADE-257] - Bad zero length source jars published by 3rd parties
cause source jar creation to fail.
Enjoy,
-The Apache Maven team