Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

How to Package Skinny war with Plain maven-war-plugin

DZone's Guide to

How to Package Skinny war with Plain maven-war-plugin

· Java Zone
Free Resource

Just released, a free O’Reilly book on Reactive Microsystems: The Evolution of Microservices at Scale. Brought to you in partnership with Lightbend.

If you are not using maven EAR plugin, then you can also use plain maven-war-plugin to package a Skinny war package like this:
 

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-war-plugin</artifactId>
  <version>2.6</version>
  <configuration>
  <!--
  We want to package skinny war to avoid third party jars -->
  <packagingExcludes>
  WEB-INF/lib/*.jar
  </packagingExcludes>
  <archiveClasses>true</archiveClasses>
  </configuration> 
</plugin>


However, if you ran into the problem I described in last post, then you want a Skinny war, but still want to include the jar it produced from your own web project. In this case, you can try this:

  <plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-war-plugin</artifactId>
  <version>2.6</version>
  <configuration>
  <!--
  We want to package skinny war to avoid third party jars, but we do want the classes from
  this project to be included -->
  <packagingExcludes>
  %regex[WEB-INF/lib/(?!my-project-artifact-name-.*\.jar).*\.jar]
  </packagingExcludes>
  <archiveClasses>true</archiveClasses>
  </configuration>
  </plugin>


The plugin would accept a REGEX expression for exclusion as well, but getting it to work might take you a few tries! If you need more than this, try this online Java REGEX testing tool:http://www.regexplanet.com/advanced/java/index.html

Strategies and techniques for building scalable and resilient microservices to refactor a monolithic application step-by-step, a free O'Reilly book. Brought to you in partnership with Lightbend.

Topics:

Published at DZone with permission of Zemian Deng, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

THE DZONE NEWSLETTER

Dev Resources & Solutions Straight to Your Inbox

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.

X

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}