Monthly Archives: May 2009

How to make a plugin that runs once during a build


May 22, 2009 By
Brian Fox

With it’s default behavior, Maven runs a plugin invocation for each project in a multi-module build. For plugins that operate on a single project at a time, this is what the author wants.

Some plugins are what we call “aggregators” which means they actually do want all the information about the full multi-module build before execution. These plugins, when run on a tree of projects cause Maven to resolve all the children before calling the plugin’s execute() method. In this mode a plugin executes just once, but effectively on the whole tree at once. (as a side note, you never want to bind an aggregator goal in your pom as this would cause the plugin to run an n! recursive build since the lifecycle would step into each child and execute the aggregator…which would cause Maven to reresolve all the children, etc)

Sometimes neither of those behaviors are what you want.

Continue reading...

Maven Book 0.5: Flex Chapter & PDF Improvements


May 11, 2009 By
Tim O'Brien

We just cut the 0.5 Edition of the book… Download the PDF or Read the Book Online. More readable PDF content. – Typography makes a huge difference to the readability and usability of a text like Maven: The Definitive Guide, and this edition marks a series of editions that are going to focus on bringing […]

Continue reading...

Maven: Integration and Distributed, Open Innovation


May 8, 2009 By
Tim O'Brien

Brian Murphy wrote a long blog post about the PAX Plugin which provides a good example of the power of Maven to act as an integration “bridge” between a number of unrelated technologies. In this post, Brian is using the PAX Maven Plugin from ops4j together with the gmaven-plugin and the maven-scala-plugin, he concludes with […]

Continue reading...

The Ulitimate Java Build System


May 6, 2009 By
Tim O'Brien

Christopher Judd places Nexus, Hudson, and Maven in his “Ultimate Java Build System” stack: “Now after all these years, I think I found the right solutions for Enterprise Java Builds. The solution involves 5 open source projects: Maven, Subversion, Hudson, Nexus, Sonar.” We’re convinced that Nexus provides the best option for repository management, and as […]

Continue reading...