Newsletter sign-up
View all newsletters

Enterprise Java Newsletter
Stay up to date on the latest tutorials and Java community news posted on JavaWorld

Sponsored Links

Optimize with a SATA RAID Storage Solution
Range of capacities as low as $1250 per TB. Ideal if you currently rely on servers/disks/JBODs

Manage releases, Ant builds, CVS, and Subversion with Antmod

Open source tool eases the build process in Java/JEE projects

  • Print
  • Feedback

Looking for that out-of-the-box solution that generates consistent Ant build files across all your projects, provides consistent tagging and branching in CVS/Subversion, or modularizes your software development process? Based on Ant, Antmod is a lightweight open source solution that enables all of this and more.

Antmod's build management is a set of Antmod plug-ins, with each plug-in being a set of Ant build files. Antmod's release management allows you to manage your projects and releases using XML release descriptor files. And Antmod's repository management enables consistent tagging and branching of one or more Concurrent Versions System and Subversion repositories, while enabling easy-to-use versioning of your CVS or Subversion modules. This functionality is especially handy for Subversion users.

In this article, you will find an introduction to Antmod and an example illustrating how to quickly start enjoying the tool's benefits.

Antmod implements build, release, and repository management using Ant as its basis

Inside Antmod

Antmod itself is an open source set of Ant tasks, Ant build files, and Java components. All of these are highly configurable and extensible, and implement the three basic functionalities illustrated in the figure above:

  • Repository management: A pluggable source configuration management layer with out-of-the-box support for CVS and Subversion. It does not matter anymore whether modules are stored in CVS or Subversion; you can even mix modules from different repositories in one release. Antmod's repository management provides easy-to-add support for other source repository systems like SourceSafe or ClearCase.
  • Release management: Release descriptors are the base concept of Antmod and describe, for each project, its dependencies on libraries and modules. A release descriptor lists jar files and modules, plus the version of each module. Modules are stored in a source repository like CVS/Subversion and represent the versioning unit. To increase a module's version, just type ant promoteversion on the command line.
  • Build management: Antmod supplies standard Ant build files. These can be customized and extended by using either a local.build.xml file for each module or plug-ins. Internally, each plug-in fires and intercepts plug-in events using Ant targets so that the plug-ins themselves remain loosely coupled while inter-communicating. Antmod comes with out-of-the-box plug-ins for war files, test coverage, code analysis, Tomcat, Hibernate, etc.


Antmod is open source and well-documented. Browse Antmod's Website for guides, references, and Antmod's API Specifications.

Getting started

So, are you interested in Antmod and want to give it a go? First, download the latest release and point your ANTMOD_HOME environment variable to the directory where you install Antmod. Antmod requires Java 1.4.2 or later and Ant 1.6.1 or later.

Configuring Antmod

You can personalize Antmod using an .antmodrc file in your home directory. On Windows, you would typically create this file in the C:\Documents and Settings\loginname directory.

  • Print
  • Feedback

Resources