The one Ant script to rule them all

Introduction

To analysis each project separately PMD and QJ Pro are run from within an ANT build file. This allows for control via a specific property file. Basically a Perl script generates a bash script that runs a build per project. The Perl script also generates the related property files. The advantage of this approach is that the analysis auto adapts as new projects are added or removed from the trunk.

Details

To avoid memory issues the build file was called a number of times. A typical property file looks similar to:
Note: I had faulty work station memory chips at the time I was writing the code.

label=part1
src=src/trunk
projects=access,alias,announcement,archive,assignment,authz,blog
qjpro_home=lib /qjpro_V2.2.0
out= /website/www
archive=archive
qjconf=conf/l5_l4.cfg
cpd.min_token=100

Label

Comment echoed by build

Src

location of source code

Projects

projects to be tested

Out

location data is stored

Archive

location information is archived to

Qjconf

location of the QJ Pro ruleset

Cpd.min

Number of repeated tokens before duplicated code is reported

Resources