From bb9bff9fa003c706316290b854dba1794c508ca5 Mon Sep 17 00:00:00 2001 From: tpietzsch <tobias.pietzsch@gmail.com> Date: Thu, 30 Apr 2020 21:02:39 +0200 Subject: [PATCH] Package with maven-shade-plugin (mvn clean package -P fatjar) --- pom.xml | 58 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/pom.xml b/pom.xml index 410704e..5b2faf0 100644 --- a/pom.xml +++ b/pom.xml @@ -77,6 +77,7 @@ <properties> <package-name>bdv.server</package-name> + <main-class>bdv.server.BigDataServer</main-class> <license.licenseName>gpl_v3</license.licenseName> <license.copyrightOwners>BigDataViewer developers.</license.copyrightOwners> @@ -120,4 +121,61 @@ <version>${commons-cli.version}</version> </dependency> </dependencies> + + <profiles> + <profile> + <id>fatjar</id> + <build> + <plugins> + <!-- Maven shade for Uber Jar --> + <!-- https://maven.apache.org/plugins/maven-shade-plugin/shade-mojo.html --> + <!-- https://databricks.gitbooks.io/databricks-spark-knowledge-base/content/troubleshooting/missing_dependencies_in_jar_files.html --> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-shade-plugin</artifactId> + <configuration> + <!-- Do not minimize for now to speed up packaging. --> + <transformers combine.children="append"> + <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> + <resource>META-INF/json/org.scijava.plugin.Plugin</resource> + </transformer> + <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> + <resource>META-INF/json/mpicbg.spim.data.generic.sequence.ImgLoaderIo</resource> + </transformer> + </transformers> + <!--<minimizeJar>true</minimizeJar> --> + <filters> + <filter> + <artifact>*:*</artifact> + <excludes> + <exclude>META-INF/*.SF</exclude> + <exclude>META-INF/*.DSA</exclude> + <exclude>META-INF/*.RSA</exclude> + </excludes> + </filter> + </filters> + <!-- Additional configuration. --> + <relocations> + <relocation> + <pattern>org.apache.commons.compress</pattern> + <shadedPattern>org.janelia.saalfeldlab.org.apache.commons.compress</shadedPattern> + </relocation> + </relocations> + </configuration> + <!-- binds by default to package phase --> + <executions> + <execution> + <phase>package</phase> + <goals> + <goal>shade</goal> + </goals> + </execution> + </executions> + </plugin> + <!-- Maven shade end --> + </plugins> + </build> + </profile> + </profiles> + </project> -- GitLab