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

More New Cool Features in Maven 3 - Parallel Builds

DZone's Guide to

More New Cool Features in Maven 3 - Parallel Builds

· Java Zone ·
Free Resource

Verify, standardize, and correct the Big 4 + more– name, email, phone and global addresses – try our Data Quality APIs now at Melissa Developer Portal!

One of the big focuses of Maven 3 is to provide a more reliable, more stable and better performing build tool. And one big area of improvement is Performance.

Maven 3 has the (new and somewhat experimental) ability to analyze your project structure, and the dependencies between your modules, to figure out which modules can be built in parallel. This has major performance implications for larger multi-module projects - the documentation reports typical speed increases of 20-50%.

To configure your modules to be built in parallel, you need to tell Maven how many threads you want to work with. The following command will run Maven using 4 threads:

mvn -T 4 clean install

Or you can get Maven to calculate how many threads to run, based on the number of available CPU cores. In this example, Maven will run up to 2 threads per core in parallel.

mvn -T 2C clean install

The biggest speed increase comes from tests. Of course, not all tests can be run in parallel - if two modules both start up a web server on the same port, for example, you will get yourself into trouble. Speed increases will also depend on how your tests are distributed through your modules - if all the slow ones are together in one module, for example, speed increases are likely to be limited. In this case, you might want to also try running your unit tests in parallel.

From http://weblogs.java.net/blog/johnsmart/archive/2010/09/07/more-new-cool-features-maven-3-parallel-builds

Developers! Quickly and easily gain access to the tools and information you need! Explore, test and combine our data quality APIs at Melissa Developer Portal – home to tools that save time and boost revenue. 

Topics:

Opinions expressed by DZone contributors are their own.

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

{{ parent.tldr }}

{{ parent.urlSource.name }}